You've already forked lazarus-ccr
Lazstats: Refactor units of the item banking system (reports to stringlist, not to outputfrm directly; clean-up of code). NOT TESTED. Hook help items of Measurement Programs menu to chm.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7455 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
Binary file not shown.
Binary file not shown.
@ -3,6 +3,8 @@ object CompRelFrm: TCompRelFrm
|
||||
Height = 361
|
||||
Top = 429
|
||||
Width = 583
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'WeightedCompositeReliability.htm'
|
||||
AutoSize = True
|
||||
Caption = 'Composite Test Reliability'
|
||||
ClientHeight = 361
|
||||
|
@ -3,6 +3,8 @@ object DIFFrm: TDIFFrm
|
||||
Height = 350
|
||||
Top = 244
|
||||
Width = 748
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'DifferentialItemFunctioning.htm'
|
||||
Caption = 'DIF Specifications'
|
||||
ClientHeight = 350
|
||||
ClientWidth = 748
|
||||
|
@ -3,6 +3,8 @@ object GradebookFrm: TGradebookFrm
|
||||
Height = 541
|
||||
Top = 275
|
||||
Width = 956
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'GradeBook.htm'
|
||||
Caption = 'Gradebook'
|
||||
ClientHeight = 521
|
||||
ClientWidth = 956
|
||||
|
@ -3,6 +3,8 @@ object GradingFrm: TGradingFrm
|
||||
Height = 441
|
||||
Top = 163
|
||||
Width = 622
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'GradeBook.htm'
|
||||
Caption = 'Specification for Grades'
|
||||
ClientHeight = 441
|
||||
ClientWidth = 622
|
||||
|
@ -3,6 +3,8 @@ object GuttmanFrm: TGuttmanFrm
|
||||
Height = 307
|
||||
Top = 322
|
||||
Width = 382
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'GuttmanScalogramAnalysis.htm'
|
||||
AutoSize = True
|
||||
Caption = 'Guttman Sclaogram Analysis'
|
||||
ClientHeight = 307
|
||||
|
@ -61,13 +61,12 @@ var
|
||||
implementation
|
||||
|
||||
uses
|
||||
ItemBankingUnit;
|
||||
ItemBankingUnit, Utils;
|
||||
|
||||
{ TEssayItemForm }
|
||||
|
||||
procedure TEssayItemForm.ReturnBtnClick(Sender: TObject);
|
||||
begin
|
||||
EssayItemForm.Hide;
|
||||
Close;
|
||||
end;
|
||||
|
||||
@ -78,38 +77,38 @@ end;
|
||||
|
||||
procedure TEssayItemForm.ShowNextBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
count: integer;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
itemno := StrToInt(ItemNoEdit.Text) + 1;
|
||||
count := ItemBankFrm.BankInfo.NEssayItems;
|
||||
if count <= itemno then
|
||||
begin
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.EssayInfo[itemno].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.EssayInfo[itemno].Answer;
|
||||
jpegnameEdit.Text := ItemBankFrm.EssayInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.EssayInfo[itemno].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.EssayInfo[itemno].Answer;
|
||||
jpegnameEdit.Text := ItemBankFrm.EssayInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TEssayItemForm.StartNewBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
currentno: integer;
|
||||
begin
|
||||
currentno := ItemBankFrm.BankInfo.NEssayItems + 1;
|
||||
ItemNoEdit.Text := IntToStr(currentno);
|
||||
@ -123,8 +122,8 @@ end;
|
||||
|
||||
procedure TEssayItemForm.ItemSaveBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
count : integer;
|
||||
currentno: integer;
|
||||
count: integer;
|
||||
begin
|
||||
count := ItemBankFrm.BankInfo.NEssayItems;
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
@ -142,71 +141,70 @@ begin
|
||||
end;
|
||||
|
||||
procedure TEssayItemForm.FormShow(Sender: TObject);
|
||||
Var
|
||||
nitems : integer;
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
//nitems: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
if ItemBankFrm.BankInfo.NEssayItems > 0 then
|
||||
begin
|
||||
nitems := ItemBankFrm.BankInfo.NEssayItems;
|
||||
ItemNoEdit.Text := '1'; //IntToStr(ItemBankFrm.TFItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[1].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.EssayInfo[1].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.EssayInfo[1].Answer;
|
||||
jpegnameEdit.Text := ItemBankFrm.EssayInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
//nitems := ItemBankFrm.BankInfo.NEssayItems;
|
||||
ItemNoEdit.Text := '1'; //IntToStr(ItemBankFrm.TFItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[1].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.EssayInfo[1].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.EssayInfo[1].Answer;
|
||||
jpegnameEdit.Text := ItemBankFrm.EssayInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end else
|
||||
begin
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Picture.Clear;
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TEssayItemForm.CodeBrowseBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
i : integer;
|
||||
outline : string;
|
||||
count: integer;
|
||||
i: integer;
|
||||
lReport: TStrings;
|
||||
begin
|
||||
OutputFrm.RichEdit.Clear;
|
||||
count := ItemBankFrm.BankInfo.NTFItems;
|
||||
OutputFrm.RichEdit.Lines.Add('Current Items');
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
lReport := TStringList.Create;
|
||||
try
|
||||
lReport.Add('Current Items');
|
||||
lReport.Add('');
|
||||
|
||||
for i := 1 to count do
|
||||
begin
|
||||
outline := format('Item number %3d',[ItemBankFrm.EssayInfo[i].itemnumber]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Major Code %3d',[ItemBankFrm.EssayInfo[i].majorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Minor Code %3d',[ItemBankFrm.EssayInfo[i].minorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Item Stem %s',[ItemBankFrm.EssayInfo[i].ItemStem]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Breif Answer %s',[ItemBankFrm.EssayInfo[i].Answer]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Graphic Image %s',[ItemBankFrm.EssayInfo[i].PicName]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
for i := 1 to count do
|
||||
begin
|
||||
lReport.Add('Item number %d', [ItemBankFrm.EssayInfo[i].itemnumber]);
|
||||
lReport.Add('Major Code %d', [ItemBankFrm.EssayInfo[i].majorcode]);
|
||||
lReport.Add('Minor Code %d', [ItemBankFrm.EssayInfo[i].minorcode]);
|
||||
lReport.Add('Item Stem %s', [ItemBankFrm.EssayInfo[i].ItemStem]);
|
||||
lReport.Add('Breif Answer %s', [ItemBankFrm.EssayInfo[i].Answer]);
|
||||
lReport.Add('Graphic Image %s', [ItemBankFrm.EssayInfo[i].PicName]);
|
||||
lReport.Add('');
|
||||
end;
|
||||
|
||||
DisplayReport(lReport);
|
||||
finally
|
||||
lReport.Free;
|
||||
end;
|
||||
OutputFrm.ShowModal;
|
||||
end;
|
||||
|
||||
procedure TEssayItemForm.FormActivate(Sender: TObject);
|
||||
@ -221,14 +219,11 @@ end;
|
||||
procedure TEssayItemForm.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Assert(ItemBankFrm <> nil);
|
||||
|
||||
if OutputFrm = nil then
|
||||
Application.CreateForm(TOutputFrm, OutputFrm);
|
||||
end;
|
||||
|
||||
procedure TEssayItemForm.jpegBrowseBtnClick(Sender: TObject);
|
||||
VAR
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
OpenPictureDialog1.Options := OpenPictureDialog1.Options+[ofFileMustExist];
|
||||
if not OpenPictureDialog1.Execute then exit;
|
||||
@ -243,39 +238,39 @@ begin
|
||||
except
|
||||
on E: Exception do begin
|
||||
Image1.Picture.Clear;
|
||||
MessageDlg('Error','Error: '+E.Message,mtError,[mbOk],0);
|
||||
ErrorMsg(E.Message);
|
||||
end;
|
||||
end;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
|
||||
procedure TEssayItemForm.PreviousBtnClick(Sender: TObject);
|
||||
Var
|
||||
response : string;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
response: string;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
response := InputBox('Code Number:','Number:','1');
|
||||
itemno := StrToInt(response);
|
||||
if itemno <= ItemBankFrm.BankInfo.NEssayItems then
|
||||
begin
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.EssayInfo[itemno].ItemStem ;
|
||||
AnswerEdit.Text := ItemBankFrm.EssayInfo[itemno].Answer;
|
||||
jpegnameEdit.Text := ItemBankFrm.EssayInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.EssayInfo[itemno].ItemStem ;
|
||||
AnswerEdit.Text := ItemBankFrm.EssayInfo[itemno].Answer;
|
||||
jpegnameEdit.Text := ItemBankFrm.EssayInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
@ -3,10 +3,13 @@ object ItemBankFrm: TItemBankFrm
|
||||
Height = 585
|
||||
Top = 241
|
||||
Width = 387
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'ItemBanking.htm'
|
||||
Caption = 'Item Banking'
|
||||
ClientHeight = 565
|
||||
ClientWidth = 387
|
||||
Menu = MainMenu1
|
||||
OnCloseQuery = FormCloseQuery
|
||||
OnCreate = FormCreate
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
@ -295,7 +298,6 @@ object ItemBankFrm: TItemBankFrm
|
||||
end
|
||||
object ExitThis: TMenuItem
|
||||
Caption = 'Exit this procedure'
|
||||
OnClick = ExitThisClick
|
||||
end
|
||||
end
|
||||
object Operations: TMenuItem
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -56,56 +56,59 @@ uses
|
||||
|
||||
procedure TCodesForm.SaveCodeBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
currentno: integer;
|
||||
begin
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
if currentno > ItemBankFrm.BankInfo.NCodes then
|
||||
ItemBankFrm.BankInfo.NCodes := currentno;
|
||||
ItemBankFrm.NItemCodesText.Text := IntToStr(currentno);
|
||||
ItemBankFrm.CodesInfo[currentno].codenumber := currentno;
|
||||
ItemBankFrm.CodesInfo[currentno].majorcodes := StrToInt(MajorEdit.Text);
|
||||
ItemBankFrm.CodesInfo[currentno].minorcodes := StrToInt(MinorEdit.Text);
|
||||
ItemBankFrm.CodesInfo[currentno].Description := DescriptionEdit.Text;
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
if currentno > ItemBankFrm.BankInfo.NCodes then
|
||||
ItemBankFrm.BankInfo.NCodes := currentno;
|
||||
|
||||
ItemBankFrm.NItemCodesText.Text := IntToStr(currentno);
|
||||
ItemBankFrm.CodesInfo[currentno].codenumber := currentno;
|
||||
ItemBankFrm.CodesInfo[currentno].majorcodes := StrToInt(MajorEdit.Text);
|
||||
ItemBankFrm.CodesInfo[currentno].minorcodes := StrToInt(MinorEdit.Text);
|
||||
ItemBankFrm.CodesInfo[currentno].Description := DescriptionEdit.Text;
|
||||
end;
|
||||
|
||||
procedure TCodesForm.DisplayBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
i : integer;
|
||||
outline : string;
|
||||
currentno: integer;
|
||||
i: integer;
|
||||
outline: string;
|
||||
lReport: TStrings;
|
||||
begin
|
||||
currentno := ItemBankFrm.BankInfo.NCodes;
|
||||
OutputFrm.RichEdit.Lines.Add('Current Item Codes');
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
lReport := TStringList.Create;
|
||||
try
|
||||
lReport.Add('Current Item Codes');
|
||||
lReport.Add('');
|
||||
|
||||
for i := 1 to currentno do
|
||||
begin
|
||||
outline := format('Item number %3d',[ItemBankFrm.CodesInfo[i].codenumber]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Major Code %3d',[ItemBankFrm.CodesInfo[i].majorcodes]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Minor Code %3d',[ItemBankFrm.CodesInfo[i].minorcodes]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Description %s',[ItemBankFrm.CodesInfo[i].Description]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
end;
|
||||
OutputFrm.ShowModal;
|
||||
currentno := ItemBankFrm.BankInfo.NCodes;
|
||||
for i := 1 to currentno do
|
||||
begin
|
||||
lReport.Add('Item number %d', [ItemBankFrm.CodesInfo[i].codenumber]);
|
||||
lReport.Add('Major Code %d', [ItemBankFrm.CodesInfo[i].majorcodes]);
|
||||
lReport.Add('Minor Code %d', [ItemBankFrm.CodesInfo[i].minorcodes]);
|
||||
lReport.Add('Description %s', [ItemBankFrm.CodesInfo[i].Description]);
|
||||
lReport.Add('');
|
||||
end;
|
||||
DisplayReport(lReport);
|
||||
finally
|
||||
lReport.Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TCodesForm.EditOneBtnClick(Sender: TObject);
|
||||
Var
|
||||
response : string;
|
||||
codeno : integer;
|
||||
var
|
||||
response: string;
|
||||
codeno: integer;
|
||||
begin
|
||||
response := InputBox('Code Number:','Number:','1');
|
||||
response := InputBox('Code Number:','Number:', '1');
|
||||
codeno := StrToInt(response);
|
||||
if codeno <= ItemBankFrm.BankInfo.NCodes then
|
||||
begin
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.CodesInfo[codeno].codenumber);
|
||||
MajorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[codeno].majorcodes);
|
||||
MinorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[codeno].minorcodes);
|
||||
DescriptionEdit.Text := ItemBankFrm.CodesInfo[codeno].Description;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.CodesInfo[codeno].codenumber);
|
||||
MajorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[codeno].majorcodes);
|
||||
MinorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[codeno].minorcodes);
|
||||
DescriptionEdit.Text := ItemBankFrm.CodesInfo[codeno].Description;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -121,30 +124,25 @@ end;
|
||||
procedure TCodesForm.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Assert(ItemBankFrm <> nil);
|
||||
|
||||
if OutputFrm = nil then
|
||||
Application.CreateForm(TOutputFrm, OutputFrm);
|
||||
|
||||
if ItemBankFrm = nil then
|
||||
Application.CreateForm(TItemBankFrm, ItemBankFrm);
|
||||
end;
|
||||
|
||||
procedure TCodesForm.FormShow(Sender: TObject);
|
||||
Var ncodes : integer;
|
||||
var
|
||||
ncodes: integer;
|
||||
begin
|
||||
if ItemBankFrm.NItemCodesText.Text <> '' then
|
||||
begin
|
||||
ncodes := StrToInt(ItemBankFrm.NItemCodesText.Text);
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.CodesInfo[ncodes].codenumber);
|
||||
MajorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[ncodes].majorcodes) ;
|
||||
MinorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[ncodes].minorcodes);
|
||||
DescriptionEdit.Text := ItemBankFrm.CodesInfo[ncodes].Description;
|
||||
ncodes := StrToInt(ItemBankFrm.NItemCodesText.Text);
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.CodesInfo[ncodes].codenumber);
|
||||
MajorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[ncodes].majorcodes) ;
|
||||
MinorEdit.Text := IntToStr(ItemBankFrm.CodesInfo[ncodes].minorcodes);
|
||||
DescriptionEdit.Text := ItemBankFrm.CodesInfo[ncodes].Description;
|
||||
end else
|
||||
begin
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorEdit.Text := '1';
|
||||
MinorEdit.Text := '0';
|
||||
DescriptionEdit.Text := '';
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorEdit.Text := '1';
|
||||
MinorEdit.Text := '0';
|
||||
DescriptionEdit.Text := '';
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -155,23 +153,24 @@ end;
|
||||
|
||||
procedure TCodesForm.StartNewBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
newnumber : integer;
|
||||
currentno: integer;
|
||||
newnumber: integer;
|
||||
begin
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
newnumber := currentno + 1;
|
||||
ItemNoEdit.Text := IntToStr(newnumber);
|
||||
currentno := StrToInt(MinorEdit.Text);
|
||||
newnumber := currentno + 1;
|
||||
MinorEdit.Text := IntToStr(newnumber);
|
||||
DescriptionEdit.Text := '';
|
||||
if newnumber > StrToInt(ItemBankFrm.NItemCodesText.Text) then
|
||||
begin
|
||||
ItemBankFrm.NItemCodesText.Text := IntToStr(newnumber);
|
||||
ItemBankFrm.CodesInfo[newnumber].codenumber := newnumber;
|
||||
end;
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
newnumber := currentno + 1;
|
||||
ItemNoEdit.Text := IntToStr(newnumber);
|
||||
currentno := StrToInt(MinorEdit.Text);
|
||||
newnumber := currentno + 1;
|
||||
MinorEdit.Text := IntToStr(newnumber);
|
||||
DescriptionEdit.Text := '';
|
||||
if newnumber > StrToInt(ItemBankFrm.NItemCodesText.Text) then
|
||||
begin
|
||||
ItemBankFrm.NItemCodesText.Text := IntToStr(newnumber);
|
||||
ItemBankFrm.CodesInfo[newnumber].codenumber := newnumber;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
initialization
|
||||
{$I itemcodesunit.lrs}
|
||||
|
||||
|
@ -82,16 +82,18 @@ var
|
||||
implementation
|
||||
|
||||
uses
|
||||
ItemBankingUnit;
|
||||
Utils, ItemBankingUnit;
|
||||
|
||||
{ TMatchItemForm }
|
||||
|
||||
procedure TMatchItemForm.jpegBrowseBtnClick(Sender: TObject);
|
||||
VAR
|
||||
JPEG : TJPEGImage;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
OpenPictureDialog1.Options := OpenPictureDialog1.Options+[ofFileMustExist];
|
||||
if not OpenPictureDialog1.Execute then exit;
|
||||
if not OpenPictureDialog1.Execute then
|
||||
exit;
|
||||
|
||||
try
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
@ -103,7 +105,7 @@ begin
|
||||
except
|
||||
on E: Exception do begin
|
||||
Image1.Picture.Clear;
|
||||
MessageDlg('Error','Error: '+E.Message,mtError,[mbOk],0);
|
||||
ErrorMsg(E.Message);
|
||||
end;
|
||||
end;
|
||||
Image1.Proportional := true;
|
||||
@ -111,59 +113,58 @@ end;
|
||||
|
||||
procedure TMatchItemForm.PreviousBtnClick(Sender: TObject);
|
||||
Var
|
||||
response : string;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
noleft, noright : integer;
|
||||
response: string;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
noleft, noright: integer;
|
||||
begin
|
||||
response := InputBox('Code Number:','Number:','1');
|
||||
response := InputBox('Code Number:', 'Number:', '1');
|
||||
itemno := StrToInt(response);
|
||||
if itemno <= ItemBankFrm.BankInfo.NMatchItems then
|
||||
begin
|
||||
Image1.Canvas.Clear;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].minorcode);
|
||||
noleft := ItemBankFrm.MatchInfo[itemno].NLeft;
|
||||
noright := ItemBankFrm.MatchInfo[itemno].NRight;
|
||||
if noleft > 0 then Left1Edit.Text := ItemBankFrm.MatchInfo[itemno].Left1;
|
||||
if noleft > 1 then Left2Edit.Text := ItemBankFrm.MatchInfo[itemno].Left2;
|
||||
if noleft > 2 then Left3Edit.Text := ItemBankFrm.MatchInfo[itemno].Left3;
|
||||
if noleft > 3 then Left4Edit.Text := ItemBankFrm.MatchInfo[itemno].Left4;
|
||||
if noleft > 4 then Left5Edit.Text := ItemBankFrm.MatchInfo[itemno].Left5;
|
||||
if noright > 0 then Right1Edit.Text := ItemBankFrm.MatchInfo[itemno].Right1;
|
||||
if noright > 1 then Right2Edit.Text := ItemBankFrm.MatchInfo[itemno].Right2;
|
||||
if noright > 2 then Right3Edit.Text := ItemBankFrm.MatchInfo[itemno].Right3;
|
||||
if noright > 3 then Right4Edit.Text := ItemBankFrm.MatchInfo[itemno].Right4;
|
||||
if noright > 4 then Right5Edit.Text := ItemBankFrm.MatchInfo[itemno].Right5;
|
||||
AnswerEdit.Text := ItemBankFrm.MatchInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MatchInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
Image1.Canvas.Clear;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].minorcode);
|
||||
noleft := ItemBankFrm.MatchInfo[itemno].NLeft;
|
||||
noright := ItemBankFrm.MatchInfo[itemno].NRight;
|
||||
if noleft > 0 then Left1Edit.Text := ItemBankFrm.MatchInfo[itemno].Left1;
|
||||
if noleft > 1 then Left2Edit.Text := ItemBankFrm.MatchInfo[itemno].Left2;
|
||||
if noleft > 2 then Left3Edit.Text := ItemBankFrm.MatchInfo[itemno].Left3;
|
||||
if noleft > 3 then Left4Edit.Text := ItemBankFrm.MatchInfo[itemno].Left4;
|
||||
if noleft > 4 then Left5Edit.Text := ItemBankFrm.MatchInfo[itemno].Left5;
|
||||
if noright > 0 then Right1Edit.Text := ItemBankFrm.MatchInfo[itemno].Right1;
|
||||
if noright > 1 then Right2Edit.Text := ItemBankFrm.MatchInfo[itemno].Right2;
|
||||
if noright > 2 then Right3Edit.Text := ItemBankFrm.MatchInfo[itemno].Right3;
|
||||
if noright > 3 then Right4Edit.Text := ItemBankFrm.MatchInfo[itemno].Right4;
|
||||
if noright > 4 then Right5Edit.Text := ItemBankFrm.MatchInfo[itemno].Right5;
|
||||
AnswerEdit.Text := ItemBankFrm.MatchInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MatchInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.ReturnBtnClick(Sender: TObject);
|
||||
begin
|
||||
MatchItemForm.Hide;
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.ItemSaveBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
count : integer;
|
||||
noleft, noright : integer;
|
||||
currentno: integer;
|
||||
count: integer;
|
||||
noleft, noright: integer;
|
||||
begin
|
||||
count := ItemBankFrm.BankInfo.NMatchItems;
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
@ -204,10 +205,10 @@ begin
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.FormShow(Sender: TObject);
|
||||
Var
|
||||
nitems : integer;
|
||||
noleft, noright : integer;
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
nitems: integer;
|
||||
noleft, noright: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
Image1.Canvas.Clear;
|
||||
Left1Edit.Text := '';
|
||||
@ -224,139 +225,105 @@ begin
|
||||
|
||||
if ItemBankFrm.BankInfo.NMatchItems > 0 then
|
||||
begin
|
||||
nitems := ItemBankFrm.BankInfo.NMatchItems;
|
||||
ItemNoEdit.Text := '1'; //IntToStr(ItemBankFrm.TFItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[1].minorcode);
|
||||
noleft := ItemBankFrm.MatchInfo[1].NLeft;
|
||||
if noleft > 0 then Left1Edit.Text := ItemBankFrm.MatchInfo[1].Left1 ;
|
||||
if noleft > 1 then Left2Edit.Text := ItemBankFrm.MatchInfo[1].Left2 ;
|
||||
if noleft > 2 then Left3Edit.Text := ItemBankFrm.MatchInfo[1].Left3 ;
|
||||
if noleft > 3 then Left4Edit.Text := ItemBankFrm.MatchInfo[1].Left4 ;
|
||||
if noleft > 4 then Left5Edit.Text := ItemBankFrm.MatchInfo[1].Left5 ;
|
||||
noright := ItemBankFrm.MatchInfo[1].NRight;
|
||||
if noright > 0 then Right1Edit.Text := ItemBankFrm.MatchInfo[1].Right1 ;
|
||||
if noright > 1 then Right2Edit.Text := ItemBankFrm.MatchInfo[1].Right2 ;
|
||||
if noright > 2 then Right3Edit.Text := ItemBankFrm.MatchInfo[1].Right3 ;
|
||||
if noright > 3 then Right4Edit.Text := ItemBankFrm.MatchInfo[1].Right4 ;
|
||||
if noright > 4 then Right5Edit.Text := ItemBankFrm.MatchInfo[1].Right5 ;
|
||||
AnswerEdit.Text := ItemBankFrm.MatchInfo[1].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MatchInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegNameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
nitems := ItemBankFrm.BankInfo.NMatchItems;
|
||||
ItemNoEdit.Text := '1'; //IntToStr(ItemBankFrm.TFItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[1].minorcode);
|
||||
noleft := ItemBankFrm.MatchInfo[1].NLeft;
|
||||
if noleft > 0 then Left1Edit.Text := ItemBankFrm.MatchInfo[1].Left1 ;
|
||||
if noleft > 1 then Left2Edit.Text := ItemBankFrm.MatchInfo[1].Left2 ;
|
||||
if noleft > 2 then Left3Edit.Text := ItemBankFrm.MatchInfo[1].Left3 ;
|
||||
if noleft > 3 then Left4Edit.Text := ItemBankFrm.MatchInfo[1].Left4 ;
|
||||
if noleft > 4 then Left5Edit.Text := ItemBankFrm.MatchInfo[1].Left5 ;
|
||||
noright := ItemBankFrm.MatchInfo[1].NRight;
|
||||
if noright > 0 then Right1Edit.Text := ItemBankFrm.MatchInfo[1].Right1 ;
|
||||
if noright > 1 then Right2Edit.Text := ItemBankFrm.MatchInfo[1].Right2 ;
|
||||
if noright > 2 then Right3Edit.Text := ItemBankFrm.MatchInfo[1].Right3 ;
|
||||
if noright > 3 then Right4Edit.Text := ItemBankFrm.MatchInfo[1].Right4 ;
|
||||
if noright > 4 then Right5Edit.Text := ItemBankFrm.MatchInfo[1].Right5 ;
|
||||
AnswerEdit.Text := ItemBankFrm.MatchInfo[1].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MatchInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegNameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end else
|
||||
begin
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
Left1Edit.Text := '';
|
||||
Left2Edit.Text := '';
|
||||
Left3Edit.Text := '';
|
||||
Left4Edit.Text := '';
|
||||
Left5Edit.Text := '';
|
||||
Right1Edit.Text := '';
|
||||
Right2Edit.Text := '';
|
||||
Right3Edit.Text := '';
|
||||
Right3Edit.Text := '';
|
||||
Right5Edit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Picture.Clear;
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
Left1Edit.Text := '';
|
||||
Left2Edit.Text := '';
|
||||
Left3Edit.Text := '';
|
||||
Left4Edit.Text := '';
|
||||
Left5Edit.Text := '';
|
||||
Right1Edit.Text := '';
|
||||
Right2Edit.Text := '';
|
||||
Right3Edit.Text := '';
|
||||
Right3Edit.Text := '';
|
||||
Right5Edit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.CodeBrowseBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
i : integer;
|
||||
outline : string;
|
||||
noleft, noright : integer;
|
||||
i: integer;
|
||||
noleft, noright: integer;
|
||||
lReport: TStrings;
|
||||
begin
|
||||
OutputFrm.RichEdit.Clear;
|
||||
count := ItemBankFrm.BankInfo.NMatchItems ;
|
||||
OutputFrm.RichEdit.Lines.Add('Current Items');
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
lReport := TStringList.Create;
|
||||
try
|
||||
lReport.Add('Current Items');
|
||||
lReport.Add('');
|
||||
|
||||
for i := 1 to count do
|
||||
begin
|
||||
noleft := ItemBankFrm.MatchInfo[i].NLeft;
|
||||
noright := ItemBankFrm.MatchInfo[i].NRight;
|
||||
outline := format('Item number %3d',[ItemBankFrm.MatchInfo[i].itemnumber]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Major Code %3d',[ItemBankFrm.MatchInfo[i].majorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Minor Code %3d',[ItemBankFrm.MatchInfo[i].minorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('No. Left items = %3d, No. Right items = %3d',
|
||||
[ItemBankFrm.MatchInfo[i].NLeft,ItemBankFrm.MatchInfo[i].NRight]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
if noleft > 0 then
|
||||
begin
|
||||
outline := format('Left Item 1 %s',[ItemBankFrm.MatchInfo[i].Left1]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noright > 0 then
|
||||
begin
|
||||
outline := format(' Right Item 1 %s',[ItemBankFrm.MatchInfo[i].Right1]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noleft > 1 then
|
||||
begin
|
||||
outline := format('Left Item 2 %s',[ItemBankFrm.MatchInfo[i].Left2]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noright > 1 then
|
||||
begin
|
||||
outline := format(' Right Item 2 %s',[ItemBankFrm.MatchInfo[i].Right2]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noleft > 2 then
|
||||
begin
|
||||
outline := format('Left Item 3 %s',[ItemBankFrm.MatchInfo[i].Left3]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noright > 2 then
|
||||
begin
|
||||
outline := format(' Right Item 3 %s',[ItemBankFrm.MatchInfo[i].Right3]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noleft > 3 then
|
||||
begin
|
||||
outline := format('Left Item 4 %s',[ItemBankFrm.MatchInfo[i].Left4]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noright > 3 then
|
||||
begin
|
||||
outline := format(' Right Item 4 %s',[ItemBankFrm.MatchInfo[i].Right4]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noleft > 4 then
|
||||
begin
|
||||
outline := format('Left Item 5 %s',[ItemBankFrm.MatchInfo[i].Left5]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if noright > 4 then
|
||||
begin
|
||||
outline := format(' Right Item 5 %s',[ItemBankFrm.MatchInfo[i].Right5]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
outline := format('Correct Choice %s',[ItemBankFrm.MatchInfo[i].CorrectChoice]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Graphic Image %s',[ItemBankFrm.MatchInfo[i].PicName]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
for i := 1 to ItemBankFrm.BankInfo.NMatchItems do
|
||||
begin
|
||||
noleft := ItemBankFrm.MatchInfo[i].NLeft;
|
||||
noright := ItemBankFrm.MatchInfo[i].NRight;
|
||||
lReport.Add('Item number %d',[ItemBankFrm.MatchInfo[i].itemnumber]);
|
||||
lReport.Add('Major Code %d',[ItemBankFrm.MatchInfo[i].majorcode]);
|
||||
lReport.Add('Minor Code %d',[ItemBankFrm.MatchInfo[i].minorcode]);
|
||||
lReport.Add('No. Left items: %d', [ItemBankFrm.MatchInfo[i].NLeft]);
|
||||
lReport.Add('No. Right items: %d', [ItemBankFrm.MatchInfo[i].NRight]);
|
||||
if noleft > 0 then
|
||||
lReport.Add('Left Item 1 %s',[ItemBankFrm.MatchInfo[i].Left1]);
|
||||
if noright > 0 then
|
||||
lReport.Add(' Right Item 1 %s',[ItemBankFrm.MatchInfo[i].Right1]);
|
||||
if noleft > 1 then
|
||||
lReport.Add('Left Item 2 %s',[ItemBankFrm.MatchInfo[i].Left2]);
|
||||
if noright > 1 then
|
||||
lReport.Add(' Right Item 2 %s',[ItemBankFrm.MatchInfo[i].Right2]);
|
||||
if noleft > 2 then
|
||||
lReport.Add('Left Item 3 %s',[ItemBankFrm.MatchInfo[i].Left3]);
|
||||
if noright > 2 then
|
||||
lReport.Add(' Right Item 3 %s',[ItemBankFrm.MatchInfo[i].Right3]);
|
||||
if noleft > 3 then
|
||||
lReport.Add('Left Item 4 %s',[ItemBankFrm.MatchInfo[i].Left4]);
|
||||
if noright > 3 then
|
||||
lReport.Add(' Right Item 4 %s',[ItemBankFrm.MatchInfo[i].Right4]);
|
||||
if noleft > 4 then
|
||||
lReport.Add('Left Item 5 %s',[ItemBankFrm.MatchInfo[i].Left5]);
|
||||
if noright > 4 then
|
||||
lReport.Add(' Right Item 5 %s',[ItemBankFrm.MatchInfo[i].Right5]);
|
||||
lReport.Add('Correct Choice %s',[ItemBankFrm.MatchInfo[i].CorrectChoice]);
|
||||
lReport.Add('Graphic Image %s',[ItemBankFrm.MatchInfo[i].PicName]);
|
||||
lReport.Add('');
|
||||
end;
|
||||
DisplayReport(lReport);
|
||||
finally
|
||||
lReport.Free;
|
||||
end;
|
||||
OutputFrm.ShowModal;
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.FormActivate(Sender: TObject);
|
||||
@ -371,9 +338,6 @@ end;
|
||||
procedure TMatchItemForm.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Assert(ItemBankFrm <> nil);
|
||||
|
||||
if OutputFrm = nil then
|
||||
Application.CreateForm(TOutputFrm, OutputFrm);
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.SelectImageBtnClick(Sender: TObject);
|
||||
@ -383,52 +347,51 @@ end;
|
||||
|
||||
procedure TMatchItemForm.ShowNextBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
noleft, noright : integer;
|
||||
count: integer;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
noleft, noright: integer;
|
||||
begin
|
||||
itemno := StrToInt(ItemNoEdit.Text) + 1;
|
||||
count := ItemBankFrm.BankInfo.NMatchItems;
|
||||
if count <= itemno then
|
||||
begin
|
||||
Image1.Canvas.Clear;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].minorcode);
|
||||
noleft := ItemBankFrm.MatchInfo[itemno].NLeft;
|
||||
noright := ItemBankFrm.MatchInfo[itemno].NRight;
|
||||
if noleft > 0 then Left1Edit.Text := ItemBankFrm.MatchInfo[itemno].Left1 ;
|
||||
if noleft > 1 then Left2Edit.Text := ItemBankFrm.MatchInfo[itemno].Left2;
|
||||
if noleft > 2 then Left3Edit.Text := ItemBankFrm.MatchInfo[itemno].Left3;
|
||||
if noleft > 3 then Left4Edit.Text := ItemBankFrm.MatchInfo[itemno].Left4;
|
||||
if noleft > 4 then Left5Edit.Text := ItemBankFrm.MatchInfo[itemno].Left5;
|
||||
if noright > 0 then Right1Edit.Text := ItemBankFrm.MatchInfo[itemno].Right1;
|
||||
if noright > 1 then Right2Edit.Text := ItemBankFrm.MatchInfo[itemno].Right2;
|
||||
if noright > 2 then Right3Edit.Text := ItemBankFrm.MatchInfo[itemno].Right3;
|
||||
if noright > 3 then Right4Edit.Text := ItemBankFrm.MatchInfo[itemno].Right4;
|
||||
if noright > 4 then Right5Edit.Text := ItemBankFrm.MatchInfo[itemno].Right5;
|
||||
AnswerEdit.Text := ItemBankFrm.MatchInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MatchInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
Image1.Canvas.Clear;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MatchInfo[itemno].minorcode);
|
||||
noleft := ItemBankFrm.MatchInfo[itemno].NLeft;
|
||||
noright := ItemBankFrm.MatchInfo[itemno].NRight;
|
||||
if noleft > 0 then Left1Edit.Text := ItemBankFrm.MatchInfo[itemno].Left1 ;
|
||||
if noleft > 1 then Left2Edit.Text := ItemBankFrm.MatchInfo[itemno].Left2;
|
||||
if noleft > 2 then Left3Edit.Text := ItemBankFrm.MatchInfo[itemno].Left3;
|
||||
if noleft > 3 then Left4Edit.Text := ItemBankFrm.MatchInfo[itemno].Left4;
|
||||
if noleft > 4 then Left5Edit.Text := ItemBankFrm.MatchInfo[itemno].Left5;
|
||||
if noright > 0 then Right1Edit.Text := ItemBankFrm.MatchInfo[itemno].Right1;
|
||||
if noright > 1 then Right2Edit.Text := ItemBankFrm.MatchInfo[itemno].Right2;
|
||||
if noright > 2 then Right3Edit.Text := ItemBankFrm.MatchInfo[itemno].Right3;
|
||||
if noright > 3 then Right4Edit.Text := ItemBankFrm.MatchInfo[itemno].Right4;
|
||||
if noright > 4 then Right5Edit.Text := ItemBankFrm.MatchInfo[itemno].Right5;
|
||||
AnswerEdit.Text := ItemBankFrm.MatchInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MatchInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMatchItemForm.StartNewBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
|
||||
currentno: integer;
|
||||
begin
|
||||
Image1.Canvas.Clear;
|
||||
currentno := ItemBankFrm.BankInfo.NMatchItems + 1;
|
||||
|
@ -80,8 +80,8 @@ uses
|
||||
{ TMCItemForm }
|
||||
|
||||
procedure TMCItemForm.jpegBrowseBtnClick(Sender: TObject);
|
||||
VAR
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
OpenPictureDialog1.Options := OpenPictureDialog1.Options+[ofFileMustExist];
|
||||
if not OpenPictureDialog1.Execute then exit;
|
||||
@ -104,22 +104,22 @@ end;
|
||||
|
||||
procedure TMCItemForm.NoChoicesEditChange(Sender: TObject);
|
||||
var
|
||||
nochoices : integer;
|
||||
nochoices: integer;
|
||||
begin
|
||||
nochoices := StrToInt(NoChoicesEdit.Text);
|
||||
if nochoices > 0 then ChoiceAEdit.Visible := true else ChoiceAEdit.Visible := false;
|
||||
if nochoices > 1 then ChoiceBEdit.Visible := true else ChoiceBEdit.Visible := false;
|
||||
if nochoices > 2 then ChoiceCEdit.Visible := true else ChoiceCEdit.Visible := false;
|
||||
if nochoices > 3 then ChoiceDEdit.Visible := true else ChoiceDEdit.Visible := false;
|
||||
if nochoices > 4 then ChoiceEEdit.Visible := true else ChoiceEEdit.Visible := false;
|
||||
nochoices := StrToInt(NoChoicesEdit.Text);
|
||||
ChoiceAEdit.Visible := (nochoices > 0);
|
||||
ChoiceBEdit.Visible := (nochoices > 1);
|
||||
ChoiceCEdit.Visible := (nochoices > 2);
|
||||
ChoiceDEdit.Visible := (nochoices > 3);
|
||||
ChoiceEEdit.Visible := (nochoices > 4);
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.PreviousBtnClick(Sender: TObject);
|
||||
Var
|
||||
response : string;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
nochoices : integer;
|
||||
var
|
||||
response: string;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
nochoices: integer;
|
||||
begin
|
||||
response := InputBox('Save current item?','Save','Y');
|
||||
if response = 'Y' then ItemSaveBtnClick(self);
|
||||
@ -133,44 +133,43 @@ begin
|
||||
itemno := StrToInt(response);
|
||||
if itemno <= ItemBankFrm.BankInfo.NMCItems then
|
||||
begin
|
||||
nochoices := ItemBankFrm.MCItemInfo[itemno].NoChoices;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].minorcode);
|
||||
NoChoicesEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].NoChoices);
|
||||
ItemStemEdit.Text := ItemBankFrm.MCItemInfo[itemno].ItemStem ;
|
||||
if nochoices > 0 then ChoiceAEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceOne;
|
||||
if nochoices > 1 then ChoiceBEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceTwo;
|
||||
if nochoices > 2 then ChoiceCEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceThree;
|
||||
if nochoices > 3 then ChoiceDEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFour;
|
||||
if nochoices > 4 then ChoiceEEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFive;
|
||||
AnswerEdit.Text := ItemBankFrm.MCItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MCItemInfo[itemno].PicName;
|
||||
if jpegnameEdit.Text <> 'none' then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
nochoices := ItemBankFrm.MCItemInfo[itemno].NoChoices;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].minorcode);
|
||||
NoChoicesEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].NoChoices);
|
||||
ItemStemEdit.Text := ItemBankFrm.MCItemInfo[itemno].ItemStem ;
|
||||
if nochoices > 0 then ChoiceAEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceOne;
|
||||
if nochoices > 1 then ChoiceBEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceTwo;
|
||||
if nochoices > 2 then ChoiceCEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceThree;
|
||||
if nochoices > 3 then ChoiceDEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFour;
|
||||
if nochoices > 4 then ChoiceEEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFive;
|
||||
AnswerEdit.Text := ItemBankFrm.MCItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MCItemInfo[itemno].PicName;
|
||||
if jpegnameEdit.Text <> 'none' then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.ReturnBtnClick(Sender: TObject);
|
||||
begin
|
||||
MCItemForm.Hide;
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.ItemSaveBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
count : integer;
|
||||
nochoices : integer;
|
||||
currentno: integer;
|
||||
count: integer;
|
||||
nochoices: integer;
|
||||
begin
|
||||
count := ItemBankFrm.BankInfo.NMCItems;
|
||||
currentno := StrToInt(ItemNoEdit.Text);
|
||||
@ -195,9 +194,9 @@ begin
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.FormShow(Sender: TObject);
|
||||
Var
|
||||
JPEG : TJPEGImage;
|
||||
nochoices : integer;
|
||||
var
|
||||
JPEG: TJPEGImage;
|
||||
nochoices: integer;
|
||||
begin
|
||||
ChoiceAEdit.Text := '';
|
||||
ChoiceBEdit.Text := '';
|
||||
@ -207,105 +206,86 @@ begin
|
||||
Image1.Canvas.Clear;
|
||||
if ItemBankFrm.BankInfo.NMCItems > 0 then
|
||||
begin
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[1].minorcode);
|
||||
nochoices := ItemBankFrm.MCItemInfo[1].NoChoices;
|
||||
NoChoicesEdit.Text := IntToStr(nochoices);
|
||||
ItemStemEdit.Text := ItemBankFrm.MCItemInfo[1].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.MCItemInfo[1].CorrectChoice;
|
||||
if nochoices > 0 then ChoiceAEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceOne;
|
||||
if nochoices > 1 then ChoiceBEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceTwo;
|
||||
if nochoices > 2 then ChoiceCEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceThree;
|
||||
if nochoices > 3 then ChoiceDEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceFour;
|
||||
if nochoices > 4 then ChoiceEEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceFive;
|
||||
jpegnameEdit.Text := ItemBankFrm.MCItemInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[1].minorcode);
|
||||
nochoices := ItemBankFrm.MCItemInfo[1].NoChoices;
|
||||
NoChoicesEdit.Text := IntToStr(nochoices);
|
||||
ItemStemEdit.Text := ItemBankFrm.MCItemInfo[1].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.MCItemInfo[1].CorrectChoice;
|
||||
if nochoices > 0 then ChoiceAEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceOne;
|
||||
if nochoices > 1 then ChoiceBEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceTwo;
|
||||
if nochoices > 2 then ChoiceCEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceThree;
|
||||
if nochoices > 3 then ChoiceDEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceFour;
|
||||
if nochoices > 4 then ChoiceEEdit.Text := ItemBankFrm.MCItemInfo[1].ChoiceFive;
|
||||
jpegnameEdit.Text := ItemBankFrm.MCItemInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end else
|
||||
begin
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Picture.Clear;
|
||||
ItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.CodeBrowseBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
i : integer;
|
||||
outline : string;
|
||||
nochoices : integer;
|
||||
i: integer;
|
||||
outline: string;
|
||||
nochoices: integer;
|
||||
lReport: TStrings;
|
||||
begin
|
||||
OutputFrm.RichEdit.Clear;
|
||||
count := ItemBankFrm.BankInfo.NMCItems;
|
||||
OutputFrm.RichEdit.Lines.Add('Current Items');
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
lReport := TStringList.Create;
|
||||
try
|
||||
lReport.Add('Current Items');
|
||||
lReport.Add('');
|
||||
|
||||
for i := 1 to count do
|
||||
begin
|
||||
ChoiceAEdit.Text := '';
|
||||
ChoiceBEdit.Text := '';
|
||||
ChoiceCEdit.Text := '';
|
||||
ChoiceDEdit.Text := '';
|
||||
ChoiceEEdit.Text := '';
|
||||
nochoices := ItemBankFrm.MCItemInfo[i].NoChoices;
|
||||
outline := format('Item number %3d',[ItemBankFrm.MCItemInfo[i].itemnumber]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Major Code %3d',[ItemBankFrm.MCItemInfo[i].majorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Minor Code %3d',[ItemBankFrm.MCItemInfo[i].minorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('No. of Choices %3d',[ItemBankFrm.MCItemInfo[i].NoChoices]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Item Stem %s',[ItemBankFrm.MCItemInfo[i].ItemStem]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
if nochoices > 0 then
|
||||
begin
|
||||
outline := format('Choice A %s',[ItemBankFrm.MCItemInfo[i].ChoiceOne]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if nochoices > 1 then
|
||||
begin
|
||||
outline := format('Choice B %s',[ItemBankFrm.MCItemInfo[i].ChoiceTwo]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if nochoices > 2 then
|
||||
begin
|
||||
outline := format('Choice C %s',[ItemBankFrm.MCItemInfo[i].ChoiceThree]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if nochoices > 3 then
|
||||
begin
|
||||
outline := format('Choice D %s',[ItemBankFrm.MCItemInfo[i].ChoiceFour]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
if nochoices > 4 then
|
||||
begin
|
||||
outline := format('Choice E %s',[ItemBankFrm.MCItemInfo[i].ChoiceFive]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
end;
|
||||
outline := format('Correct Choice %s',[ItemBankFrm.MCItemInfo[i].CorrectChoice]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Graphic Image %s',[ItemBankFrm.MCItemInfo[i].PicName]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
for i := 1 to ItemBankFrm.BankInfo.NMCItems do
|
||||
begin
|
||||
ChoiceAEdit.Text := '';
|
||||
ChoiceBEdit.Text := '';
|
||||
ChoiceCEdit.Text := '';
|
||||
ChoiceDEdit.Text := '';
|
||||
ChoiceEEdit.Text := '';
|
||||
nochoices := ItemBankFrm.MCItemInfo[i].NoChoices;
|
||||
lReport.Add('Item number %d', [ItemBankFrm.MCItemInfo[i].itemnumber]);
|
||||
lReport.Add('Major Code %d', [ItemBankFrm.MCItemInfo[i].majorcode]);
|
||||
lReport.Add('Minor Code %d', [ItemBankFrm.MCItemInfo[i].minorcode]);
|
||||
lReport.Add('No. of Choices %d', [ItemBankFrm.MCItemInfo[i].NoChoices]);
|
||||
lReport.Add('Item Stem %s', [ItemBankFrm.MCItemInfo[i].ItemStem]);
|
||||
if nochoices > 0 then
|
||||
lReport.Add('Choice A %s', [ItemBankFrm.MCItemInfo[i].ChoiceOne]);
|
||||
if nochoices > 1 then
|
||||
lReport.Add('Choice B %s', [ItemBankFrm.MCItemInfo[i].ChoiceTwo]);
|
||||
if nochoices > 2 then
|
||||
lReport.Add('Choice C %s', [ItemBankFrm.MCItemInfo[i].ChoiceThree]);
|
||||
if nochoices > 3 then
|
||||
lReport.Add('Choice D %s', [ItemBankFrm.MCItemInfo[i].ChoiceFour]);
|
||||
if nochoices > 4 then
|
||||
lReport.Add('Choice E %s', [ItemBankFrm.MCItemInfo[i].ChoiceFive]);
|
||||
lReport.Add('Correct Choice %s', [ItemBankFrm.MCItemInfo[i].CorrectChoice]);
|
||||
lReport.Add('Graphic Image %s', [ItemBankFrm.MCItemInfo[i].PicName]);
|
||||
lReport.Add('');
|
||||
end;
|
||||
DisplayReport(lReport);
|
||||
finally
|
||||
lReport.Free;
|
||||
end;
|
||||
OutputFrm.ShowModal;
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.FormActivate(Sender: TObject);
|
||||
@ -320,8 +300,6 @@ end;
|
||||
procedure TMCItemForm.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Assert(ItemBankFrm <> nil);
|
||||
if OutputFrm = nil then
|
||||
Application.CreateForm(TOutputFrm, OutputFrm);
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.SelectImageBtnClick(Sender: TObject);
|
||||
@ -331,11 +309,11 @@ end;
|
||||
|
||||
procedure TMCItemForm.ShowNextBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
nochoices : integer;
|
||||
response : string;
|
||||
count: integer;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
nochoices: integer;
|
||||
response: string;
|
||||
begin
|
||||
response := InputBox('Save current item?','Save','Y');
|
||||
if response = 'Y' then ItemSaveBtnClick(self);
|
||||
@ -344,42 +322,42 @@ begin
|
||||
count := ItemBankFrm.BankInfo.NMCItems;
|
||||
if count <= itemno then
|
||||
begin
|
||||
ChoiceAEdit.Text := '';
|
||||
ChoiceBEdit.Text := '';
|
||||
ChoiceCEdit.Text := '';
|
||||
ChoiceDEdit.Text := '';
|
||||
ChoiceEEdit.Text := '';
|
||||
nochoices := ItemBankFrm.MCItemInfo[itemno].NoChoices;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.MCItemInfo[itemno].ItemStem;
|
||||
if nochoices > 0 then ChoiceAEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceOne;
|
||||
if nochoices > 1 then ChoiceBEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceTwo;
|
||||
if nochoices > 2 then ChoiceCEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceThree;
|
||||
if nochoices > 3 then ChoiceDEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFour;
|
||||
if nochoices > 4 then ChoiceEEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFive;
|
||||
AnswerEdit.Text := ItemBankFrm.MCItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MCItemInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
ChoiceAEdit.Text := '';
|
||||
ChoiceBEdit.Text := '';
|
||||
ChoiceCEdit.Text := '';
|
||||
ChoiceDEdit.Text := '';
|
||||
ChoiceEEdit.Text := '';
|
||||
nochoices := ItemBankFrm.MCItemInfo[itemno].NoChoices;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.MCItemInfo[itemno].ItemStem;
|
||||
if nochoices > 0 then ChoiceAEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceOne;
|
||||
if nochoices > 1 then ChoiceBEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceTwo;
|
||||
if nochoices > 2 then ChoiceCEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceThree;
|
||||
if nochoices > 3 then ChoiceDEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFour;
|
||||
if nochoices > 4 then ChoiceEEdit.Text := ItemBankFrm.MCItemInfo[itemno].ChoiceFive;
|
||||
AnswerEdit.Text := ItemBankFrm.MCItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.MCItemInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TMCItemForm.StartNewBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
response : string;
|
||||
currentno: integer;
|
||||
response: string;
|
||||
begin
|
||||
response := InputBox('Save current item?','Save','Y');
|
||||
if response = 'Y' then ItemSaveBtnClick(self);
|
||||
|
@ -69,20 +69,19 @@ uses
|
||||
|
||||
procedure TTestSpecsForm.ReturnBtnClick(Sender: TObject);
|
||||
begin
|
||||
ItemBankFrm.BankInfo.TestItems := testno;
|
||||
ItemBankFrm.NSpecifiedEdit.Text := IntToStr(testno);
|
||||
TestSpecsForm.Hide;
|
||||
Close;
|
||||
ItemBankFrm.BankInfo.TestItems := testno;
|
||||
ItemBankFrm.NSpecifiedEdit.Text := IntToStr(testno);
|
||||
Close;
|
||||
end;
|
||||
|
||||
procedure TTestSpecsForm.SelectItemBtnClick(Sender: TObject);
|
||||
begin
|
||||
testno := testno + 1;
|
||||
ItemBankFrm.TestContents[testno].ItemNumber := StrToInt(ItemNoEdit.Text);
|
||||
ItemBankFrm.TestContents[testno].MajorCode := StrToInt(MajorCodeEdit.Text);
|
||||
ItemBankFrm.TestContents[testno].MinorCode := StrToInt(MinorCodeEdit.Text);
|
||||
ItemBankFrm.TestContents[testno].ItemType := SelectedEdit.Text;
|
||||
NoItemsEdit.Text := IntToStr(testno);
|
||||
testno := testno + 1;
|
||||
ItemBankFrm.TestContents[testno].ItemNumber := StrToInt(ItemNoEdit.Text);
|
||||
ItemBankFrm.TestContents[testno].MajorCode := StrToInt(MajorCodeEdit.Text);
|
||||
ItemBankFrm.TestContents[testno].MinorCode := StrToInt(MinorCodeEdit.Text);
|
||||
ItemBankFrm.TestContents[testno].ItemType := SelectedEdit.Text;
|
||||
NoItemsEdit.Text := IntToStr(testno);
|
||||
end;
|
||||
|
||||
procedure TTestSpecsForm.FormShow(Sender: TObject);
|
||||
@ -96,137 +95,147 @@ var
|
||||
nomc, notf, nomatch, noessay, i : integer;
|
||||
response : string;
|
||||
begin
|
||||
nomc := StrToInt(MCNoEdit.Text);
|
||||
notf := StrToInt(TFNoEdit.Text);
|
||||
nomatch := StrToInt(MatchNoEdit.Text);
|
||||
noessay := StrToInt(EssayNoEdit.Text);
|
||||
case Index of
|
||||
0 : begin // Select multiple choice items
|
||||
SelectedEdit.Text := 'MC';
|
||||
for i := 1 to nomc do
|
||||
begin
|
||||
ShowMCItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
nomc := StrToInt(MCNoEdit.Text);
|
||||
notf := StrToInt(TFNoEdit.Text);
|
||||
nomatch := StrToInt(MatchNoEdit.Text);
|
||||
noessay := StrToInt(EssayNoEdit.Text);
|
||||
case Index of
|
||||
0 : begin // Select multiple choice items
|
||||
SelectedEdit.Text := 'MC';
|
||||
for i := 1 to nomc do
|
||||
begin
|
||||
ShowMCItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
1 : begin // Select true or false items
|
||||
SelectedEdit.Text := 'TF';
|
||||
for i := 1 to notf do
|
||||
begin
|
||||
ShowTFItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
end;
|
||||
1 : begin // Select true or false items
|
||||
SelectedEdit.Text := 'TF';
|
||||
for i := 1 to notf do
|
||||
begin
|
||||
ShowTFItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
2 : begin // Select Essay items
|
||||
SelectedEdit.Text := 'Essay';
|
||||
for i := 1 to noessay do
|
||||
begin
|
||||
ShowEssayItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
end;
|
||||
2 : begin // Select Essay items
|
||||
SelectedEdit.Text := 'Essay';
|
||||
for i := 1 to noessay do
|
||||
begin
|
||||
ShowEssayItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
3 : begin // Select matching items
|
||||
SelectedEdit.Text := 'Matching';
|
||||
for i := 1 to nomc do
|
||||
begin
|
||||
ShowMatchItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
end;
|
||||
3 : begin // Select matching items
|
||||
SelectedEdit.Text := 'Matching';
|
||||
for i := 1 to nomc do
|
||||
begin
|
||||
ShowMatchItem(self,i);
|
||||
response := InputBox('Add item to test','Add?','Y');
|
||||
if response = 'Y' then SelectItemBtnClick(self) else SkipBtnClick(self);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTestSpecsForm.SkipBtnClick(Sender: TObject);
|
||||
begin
|
||||
ShowMessage('Item skipped');
|
||||
ShowMessage('Item skipped');
|
||||
end;
|
||||
|
||||
// ToDoo: This must be moved to OnPaint handler.
|
||||
procedure TTestSpecsForm.ShowMCItem(Sender: TObject; index : integer);
|
||||
var
|
||||
outline : string;
|
||||
nochoices : integer;
|
||||
space : integer;
|
||||
outline: string;
|
||||
nochoices: integer;
|
||||
space: integer;
|
||||
begin
|
||||
Panel1.Canvas.Clear;
|
||||
space := Panel1.Canvas.Height div 9;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[index].itemnumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[index].MajorCode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.MCItemInfo[index].MinorCode);
|
||||
|
||||
outline := ItemBankFrm.MCItemInfo[index].ItemStem;
|
||||
Panel1.Canvas.TextOut(1,space,outline);
|
||||
Panel1.Canvas.TextOut(1, space, outline);
|
||||
|
||||
nochoices := ItemBankFrm.MCItemInfo[index].NoChoices ;
|
||||
if nochoices > 0 then
|
||||
begin
|
||||
outline := format('Choice A %s',[ItemBankFrm.MCItemInfo[index].ChoiceOne]);
|
||||
Panel1.Canvas.TextOut(1,space*2,outline);
|
||||
outline := Format('Choice A %s', [ItemBankFrm.MCItemInfo[index].ChoiceOne]);
|
||||
Panel1.Canvas.TextOut(1, space*2, outline);
|
||||
end;
|
||||
|
||||
if nochoices > 1 then
|
||||
begin
|
||||
outline := format('Choice B %s',[ItemBankFrm.MCItemInfo[index].ChoiceTwo]);
|
||||
Panel1.Canvas.TextOut(1,space*3,outline);
|
||||
outline := Format('Choice B %s', [ItemBankFrm.MCItemInfo[index].ChoiceTwo]);
|
||||
Panel1.Canvas.TextOut(1, space*3, outline);
|
||||
end;
|
||||
|
||||
if nochoices > 2 then
|
||||
begin
|
||||
outline := format('Choice C %s',[ItemBankFrm.MCItemInfo[index].ChoiceThree]);
|
||||
Panel1.Canvas.TextOut(1,space*4,outline);
|
||||
outline := Format('Choice C %s', [ItemBankFrm.MCItemInfo[index].ChoiceThree]);
|
||||
Panel1.Canvas.TextOut(1, space*4, outline);
|
||||
end;
|
||||
|
||||
if nochoices > 3 then
|
||||
begin
|
||||
outline := format('Choice D %s',[ItemBankFrm.MCItemInfo[index].ChoiceFour]);
|
||||
Panel1.Canvas.TextOut(1,space*5,outline);
|
||||
outline := Format('Choice D %s', [ItemBankFrm.MCItemInfo[index].ChoiceFour]);
|
||||
Panel1.Canvas.TextOut(1, space*5, outline);
|
||||
end;
|
||||
|
||||
if nochoices > 4 then
|
||||
begin
|
||||
outline := format('Choice E %s',[ItemBankFrm.MCItemInfo[index].ChoiceFive]);
|
||||
Panel1.Canvas.TextOut(1,space*6,outline);
|
||||
outline := Format('Choice E %s', [ItemBankFrm.MCItemInfo[index].ChoiceFive]);
|
||||
Panel1.Canvas.TextOut(1, space*6, outline);
|
||||
end;
|
||||
outline := format('Correct Choice %s',[ItemBankFrm.MCItemInfo[index].CorrectChoice]);
|
||||
Panel1.Canvas.TextOut(1,space*7,outline);
|
||||
outline := format('Graphic Image %s',[ItemBankFrm.MCItemInfo[index].PicName]);
|
||||
Panel1.Canvas.TextOut(1,space*8,outline);
|
||||
|
||||
outline := Format('Correct Choice %s', [ItemBankFrm.MCItemInfo[index].CorrectChoice]);
|
||||
Panel1.Canvas.TextOut(1, space*7, outline);
|
||||
|
||||
outline := Format('Graphic Image %s', [ItemBankFrm.MCItemInfo[index].PicName]);
|
||||
Panel1.Canvas.TextOut(1, space*8, outline);
|
||||
end;
|
||||
|
||||
// ToDoo: This must be moved to OnPaint handler.
|
||||
procedure TTestSpecsForm.ShowTFItem(Sender: TObject; index : integer);
|
||||
var
|
||||
outline : string;
|
||||
space : integer;
|
||||
outline: string;
|
||||
space: integer;
|
||||
begin
|
||||
Panel1.Canvas.Clear;
|
||||
space := Panel1.Canvas.Height div 9;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[index].itemnumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[index].MajorCode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[index].MinorCode);
|
||||
outline := ItemBankFrm.TFItemInfo[index].ItemStem;
|
||||
Panel1.Canvas.TextOut(1,space,outline);
|
||||
outline := ItemBankFrm.TFItemInfo[index].CorrectChoice ;
|
||||
Panel1.Canvas.TextOut(1,space*2,outline);
|
||||
outline := ItemBankFrm.TFItemInfo[index].PicName ;
|
||||
Panel1.Canvas.TextOut(1,space*3,outline);
|
||||
Panel1.Canvas.TextOut(1,space,ItemBankFrm.TFItemInfo[index].ItemStem);
|
||||
Panel1.Canvas.TextOut(1,space*2,ItemBankFrm.TFItemInfo[index].CorrectChoice);
|
||||
Panel1.Canvas.TextOut(1,space*3,ItemBankFrm.TFItemInfo[index].PicName);
|
||||
end;
|
||||
|
||||
// ToDo: This must be moved to OnPaint handler
|
||||
procedure TTestSpecsForm.ShowEssayItem(Sender: TObject; index : integer);
|
||||
var
|
||||
outline : string;
|
||||
space : integer;
|
||||
outline: string;
|
||||
space: integer;
|
||||
begin
|
||||
Panel1.Canvas.Clear;
|
||||
space := Panel1.Canvas.Height div 9;
|
||||
ItemNoEdit.Text := IntToStr(ItemBankFrm.EssayInfo[index].itemnumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[index].MajorCode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.EssayInfo[index].MinorCode);
|
||||
outline := ItemBankFrm.EssayInfo[index].ItemStem;
|
||||
Panel1.Canvas.TextOut(1,space,outline);
|
||||
outline := ItemBankFrm.EssayInfo[index].Answer ;
|
||||
Panel1.Canvas.TextOut(1,space*2,outline);
|
||||
outline := ItemBankFrm.EssayInfo[index].PicName ;
|
||||
Panel1.Canvas.TextOut(1,space*3,outline);
|
||||
Panel1.Canvas.TextOut(1, space, ItemBankFrm.EssayInfo[index].ItemStem);
|
||||
Panel1.Canvas.TextOut(1, space*2, ItemBankFrm.EssayInfo[index].Answer);
|
||||
Panel1.Canvas.TextOut(1, space*3, ItemBankFrm.EssayInfo[index].PicName);
|
||||
end;
|
||||
|
||||
// ToDo: This must be moved to OnPaint handler
|
||||
procedure TTestSpecsForm.ShowMatchItem(Sender: TObject; index : integer);
|
||||
var
|
||||
outline : string;
|
||||
space : integer;
|
||||
noleft, noright : integer;
|
||||
outline: string;
|
||||
space: integer;
|
||||
noleft, noright: integer;
|
||||
begin
|
||||
Panel1.Canvas.Clear;
|
||||
noleft := ItemBankFrm.MatchInfo[index].NLeft;
|
||||
@ -238,59 +247,56 @@ begin
|
||||
// do left and right stems
|
||||
if noleft > 0 then
|
||||
begin
|
||||
outline := format('Left Item 1 %s',[ItemBankFrm.MatchInfo[index].Left1]);
|
||||
Panel1.Canvas.TextOut(1,space,outline);
|
||||
outline := Format('Left Item 1 %s', [ItemBankFrm.MatchInfo[index].Left1]);
|
||||
Panel1.Canvas.TextOut(1, space, outline);
|
||||
end;
|
||||
if noright > 0 then
|
||||
begin
|
||||
outline := format(' Right Item 1 %s',[ItemBankFrm.MatchInfo[index].Right1]);
|
||||
Panel1.Canvas.TextOut(1,space*2,outline);
|
||||
outline := Format(' Right Item 1 %s', [ItemBankFrm.MatchInfo[index].Right1]);
|
||||
Panel1.Canvas.TextOut(1, space*2, outline);
|
||||
end;
|
||||
if noleft > 1 then
|
||||
begin
|
||||
outline := format('Left Item 2 %s',[ItemBankFrm.MatchInfo[index].Left2]);
|
||||
Panel1.Canvas.TextOut(1,space*3,outline);
|
||||
outline := Format('Left Item 2 %s', [ItemBankFrm.MatchInfo[index].Left2]);
|
||||
Panel1.Canvas.TextOut(1, space*3, outline);
|
||||
end;
|
||||
if noright > 1 then
|
||||
begin
|
||||
outline := format(' Right Item 2 %s',[ItemBankFrm.MatchInfo[index].Right2]);
|
||||
Panel1.Canvas.TextOut(1,space*4,outline);
|
||||
outline := Format(' Right Item 2 %s', [ItemBankFrm.MatchInfo[index].Right2]);
|
||||
Panel1.Canvas.TextOut(1, space*4, outline);
|
||||
end;
|
||||
if noleft > 2 then
|
||||
begin
|
||||
outline := format('Left Item 3 %s',[ItemBankFrm.MatchInfo[index].Left3]);
|
||||
Panel1.Canvas.TextOut(1,space*5,outline);
|
||||
outline := Format('Left Item 3 %s', [ItemBankFrm.MatchInfo[index].Left3]);
|
||||
Panel1.Canvas.TextOut(1, space*5, outline);
|
||||
end;
|
||||
if noright > 2 then
|
||||
begin
|
||||
outline := format(' Right Item 3 %s',[ItemBankFrm.MatchInfo[index].Right3]);
|
||||
Panel1.Canvas.TextOut(1,space*6,outline);
|
||||
outline := Format(' Right Item 3 %s', [ItemBankFrm.MatchInfo[index].Right3]);
|
||||
Panel1.Canvas.TextOut(1, space*6, outline);
|
||||
end;
|
||||
if noleft > 3 then
|
||||
begin
|
||||
outline := format('Left Item 4 %s',[ItemBankFrm.MatchInfo[index].Left4]);
|
||||
Panel1.Canvas.TextOut(1,space*7,outline);
|
||||
outline := Format('Left Item 4 %s', [ItemBankFrm.MatchInfo[index].Left4]);
|
||||
Panel1.Canvas.TextOut(1, space*7, outline);
|
||||
end;
|
||||
if noright > 3 then
|
||||
begin
|
||||
outline := format(' Right Item 4 %s',[ItemBankFrm.MatchInfo[index].Right4]);
|
||||
Panel1.Canvas.TextOut(1,space*8,outline);
|
||||
outline := Format(' Right Item 4 %s', [ItemBankFrm.MatchInfo[index].Right4]);
|
||||
Panel1.Canvas.TextOut(1, space*8, outline);
|
||||
end;
|
||||
if noleft > 4 then
|
||||
begin
|
||||
outline := format('Left Item 5 %s',[ItemBankFrm.MatchInfo[index].Left5]);
|
||||
Panel1.Canvas.TextOut(1,space*9,outline);
|
||||
outline := Format('Left Item 5 %s', [ItemBankFrm.MatchInfo[index].Left5]);
|
||||
Panel1.Canvas.TextOut(1, space*9, outline);
|
||||
end;
|
||||
if noright > 4 then
|
||||
begin
|
||||
outline := format(' Right Item 5 %s',[ItemBankFrm.MatchInfo[index].Right5]);
|
||||
Panel1.Canvas.TextOut(1,space*10,outline);
|
||||
outline := Format(' Right Item 5 %s', [ItemBankFrm.MatchInfo[index].Right5]);
|
||||
Panel1.Canvas.TextOut(1, space*10, outline);
|
||||
end;
|
||||
outline := ItemBankFrm.MatchInfo[index].CorrectChoice ;
|
||||
Panel1.Canvas.TextOut(1,space*11,outline);
|
||||
outline := ItemBankFrm.MatchInfo[index].PicName ;
|
||||
Panel1.Canvas.TextOut(1,space*12,outline);
|
||||
|
||||
Panel1.Canvas.TextOut(1, space*11, ItemBankFrm.MatchInfo[index].CorrectChoice);
|
||||
Panel1.Canvas.TextOut(1, space*12, ItemBankFrm.MatchInfo[index].PicName);
|
||||
end;
|
||||
|
||||
initialization
|
||||
|
@ -58,59 +58,61 @@ var
|
||||
TFItemForm: TTFItemForm;
|
||||
|
||||
implementation
|
||||
uses ItemBankingUnit;
|
||||
|
||||
uses
|
||||
Utils, ItemBankingUnit;
|
||||
|
||||
{ TTFItemForm }
|
||||
|
||||
procedure TTFItemForm.jpegBrowseBtnClick(Sender: TObject);
|
||||
VAR
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
OpenPictureDialog1.Options := OpenPictureDialog1.Options+[ofFileMustExist];
|
||||
if not OpenPictureDialog1.Execute then exit;
|
||||
try
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(OpenPictureDialog1.FileName);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
end;
|
||||
except
|
||||
on E: Exception do begin
|
||||
MessageDlg('Error','Error: '+E.Message,mtError,[mbOk],0);
|
||||
end;
|
||||
end;
|
||||
Image1.Proportional := true;
|
||||
OpenPictureDialog1.Options := OpenPictureDialog1.Options+[ofFileMustExist];
|
||||
if not OpenPictureDialog1.Execute then exit;
|
||||
try
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(OpenPictureDialog1.FileName);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
end;
|
||||
except
|
||||
on E: Exception do
|
||||
ErrorMsg(E.Message);
|
||||
end;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.PreviousBtnClick(Sender: TObject);
|
||||
Var
|
||||
response : string;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
response: string;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
response := InputBox('Code Number:','Number:','1');
|
||||
itemno := StrToInt(response);
|
||||
if itemno <= ItemBankFrm.BankInfo.NTFItems then
|
||||
begin
|
||||
TFItemNoEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.TFItemInfo[itemno].ItemStem ;
|
||||
AnswerEdit.Text := ItemBankFrm.TFItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.TFItemInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
response := InputBox('Code Number:','Number:','1');
|
||||
itemno := StrToInt(response);
|
||||
if itemno <= ItemBankFrm.BankInfo.NTFItems then
|
||||
begin
|
||||
TFItemNoEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].majorcode);
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.TFItemInfo[itemno].ItemStem ;
|
||||
AnswerEdit.Text := ItemBankFrm.TFItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.TFItemInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegnameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.ReturnBtnClick(Sender: TObject);
|
||||
@ -120,52 +122,50 @@ end;
|
||||
|
||||
procedure TTFItemForm.ItemSaveBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
count : integer;
|
||||
currentno: integer;
|
||||
count: integer;
|
||||
begin
|
||||
count := ItemBankFrm.BankInfo.NTFItems;
|
||||
currentno := StrToInt(TFItemNoEdit.Text);
|
||||
if currentno > count then
|
||||
begin
|
||||
ItemBankFrm.BankInfo.NTFItems := currentno;
|
||||
ItemBankFrm.NTFItemsText.Text := IntToStr(currentno);
|
||||
end;
|
||||
ItemBankFrm.TFItemInfo[currentno].ItemNumber := currentno;
|
||||
ItemBankFrm.TFItemInfo[currentno].majorcode := StrToInt(MajorCodeEdit.Text);
|
||||
ItemBankFrm.TFItemInfo[currentno].minorcode := StrToInt(MinorCodeEdit.Text);
|
||||
ItemBankFrm.TFItemInfo[currentno].ItemStem := ItemStemEdit.Text;
|
||||
ItemBankFrm.TFItemInfo[currentno].CorrectChoice := AnswerEdit.text[1];
|
||||
ItemBankFrm.TFItemInfo[currentno].PicName := jpegnameEdit.Text;
|
||||
count := ItemBankFrm.BankInfo.NTFItems;
|
||||
currentno := StrToInt(TFItemNoEdit.Text);
|
||||
if currentno > count then
|
||||
begin
|
||||
ItemBankFrm.BankInfo.NTFItems := currentno;
|
||||
ItemBankFrm.NTFItemsText.Text := IntToStr(currentno);
|
||||
end;
|
||||
ItemBankFrm.TFItemInfo[currentno].ItemNumber := currentno;
|
||||
ItemBankFrm.TFItemInfo[currentno].majorcode := StrToInt(MajorCodeEdit.Text);
|
||||
ItemBankFrm.TFItemInfo[currentno].minorcode := StrToInt(MinorCodeEdit.Text);
|
||||
ItemBankFrm.TFItemInfo[currentno].ItemStem := ItemStemEdit.Text;
|
||||
ItemBankFrm.TFItemInfo[currentno].CorrectChoice := AnswerEdit.text[1];
|
||||
ItemBankFrm.TFItemInfo[currentno].PicName := jpegnameEdit.Text;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.CodeBrowseBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
i : integer;
|
||||
outline : string;
|
||||
i: integer;
|
||||
outline: string;
|
||||
lReport: TStrings;
|
||||
begin
|
||||
OutputFrm.RichEdit.Clear;
|
||||
count := ItemBankFrm.BankInfo.NTFItems;
|
||||
OutputFrm.RichEdit.Lines.Add('Current Items');
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
lReport := TStringList.Create;
|
||||
try
|
||||
lReport.Add('Current Items');
|
||||
lReport.Add('');
|
||||
|
||||
for i := 1 to count do
|
||||
begin
|
||||
outline := format('Item number %3d',[ItemBankFrm.TFItemInfo[i].itemnumber]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Major Code %3d',[ItemBankFrm.TFItemInfo[i].majorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Minor Code %3d',[ItemBankFrm.TFItemInfo[i].minorcode]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Item Stem %s',[ItemBankFrm.TFItemInfo[i].ItemStem]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Correct Choice %s',[ItemBankFrm.TFItemInfo[i].CorrectChoice]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
outline := format('Graphic Image %s',[ItemBankFrm.TFItemInfo[i].PicName]);
|
||||
OutputFrm.RichEdit.Lines.Add(outline);
|
||||
OutputFrm.RichEdit.Lines.Add('');
|
||||
end;
|
||||
OutputFrm.ShowModal;
|
||||
for i := 1 to ItemBankFrm.BankInfo.NTFItems do
|
||||
begin
|
||||
lReport.Add('Item number %d', [ItemBankFrm.TFItemInfo[i].itemnumber]);
|
||||
lReport.Add('Major Code %d', [ItemBankFrm.TFItemInfo[i].majorcode]);
|
||||
lReport.Add('Minor Code %d', [ItemBankFrm.TFItemInfo[i].minorcode]);
|
||||
lReport.Add('Item Stem %s', [ItemBankFrm.TFItemInfo[i].ItemStem]);
|
||||
lReport.Add('Correct Choice %s', [ItemBankFrm.TFItemInfo[i].CorrectChoice]);
|
||||
lReport.Add('Graphic Image %s', [ItemBankFrm.TFItemInfo[i].PicName]);
|
||||
lReport.Add('');
|
||||
end;
|
||||
|
||||
DisplayReport(lReport);
|
||||
finally
|
||||
lReport.Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.FormActivate(Sender: TObject);
|
||||
@ -180,95 +180,89 @@ end;
|
||||
procedure TTFItemForm.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Assert(ItemBankFrm <> nil);
|
||||
if OutputFrm = nil then
|
||||
Application.CreateForm(TOutputFrm, OutputFrm);
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.FormShow(Sender: TObject);
|
||||
Var
|
||||
nitems : integer;
|
||||
JPEG : TJPEGImage;
|
||||
var
|
||||
nitems: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
nitems := ItemBankFrm.BankInfo.NTFItems;
|
||||
if nItems > 0 then
|
||||
begin
|
||||
TFItemNoEdit.Text := '1'; //IntToStr(ItemBankFrm.TFItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[1].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.TFItemInfo[1].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.TFItemInfo[1].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.TFItemInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegNameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;;
|
||||
end else
|
||||
begin
|
||||
TFItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := '';
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
nitems := ItemBankFrm.BankInfo.NTFItems;
|
||||
if nItems > 0 then
|
||||
begin
|
||||
TFItemNoEdit.Text := '1'; //IntToStr(ItemBankFrm.TFItemInfo[1].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[1].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[1].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.TFItemInfo[1].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.TFItemInfo[1].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.TFItemInfo[1].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegNameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end else
|
||||
Image1.Picture.Clear;;
|
||||
end else
|
||||
begin
|
||||
TFItemNoEdit.Text := '1';
|
||||
MajorCodeEdit.Text := '1';
|
||||
MinorCodeEdit.Text := '0';
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := '';
|
||||
Image1.Picture.Clear;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.SelectImageBtnClick(Sender: TObject);
|
||||
begin
|
||||
jpegnameEdit.Text := OpenPictureDialog1.FileName;
|
||||
jpegnameEdit.Text := OpenPictureDialog1.FileName;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.ShowNextBtnClick(Sender: TObject);
|
||||
var
|
||||
count : integer;
|
||||
itemno : integer;
|
||||
JPEG : TJPEGImage;
|
||||
count: integer;
|
||||
itemno: integer;
|
||||
JPEG: TJPEGImage;
|
||||
begin
|
||||
itemno := StrToInt(TFItemNoEdit.Text) + 1;
|
||||
count := ItemBankFrm.BankInfo.NTFItems;
|
||||
if count <= itemno then
|
||||
begin
|
||||
TFItemNoEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.TFItemInfo[itemno].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.TFItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.TFItemInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegNameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
itemno := StrToInt(TFItemNoEdit.Text) + 1;
|
||||
count := ItemBankFrm.BankInfo.NTFItems;
|
||||
if count <= itemno then
|
||||
begin
|
||||
TFItemNoEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].ItemNumber);
|
||||
MajorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].majorcode) ;
|
||||
MinorCodeEdit.Text := IntToStr(ItemBankFrm.TFItemInfo[itemno].minorcode);
|
||||
ItemStemEdit.Text := ItemBankFrm.TFItemInfo[itemno].ItemStem;
|
||||
AnswerEdit.Text := ItemBankFrm.TFItemInfo[itemno].CorrectChoice;
|
||||
jpegnameEdit.Text := ItemBankFrm.TFItemInfo[itemno].PicName;
|
||||
if (jpegnameEdit.Text <> 'none') and FileExists(jpegNameEdit.Text) then
|
||||
begin
|
||||
JPEG := TJPEGImage.Create;
|
||||
try
|
||||
JPEG.LoadFromFile(jpegnameEdit.Text);
|
||||
Image1.Picture.Assign(JPEG);
|
||||
finally
|
||||
JPEG.Free;
|
||||
Image1.Proportional := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTFItemForm.StartNewBtnClick(Sender: TObject);
|
||||
var
|
||||
currentno : integer;
|
||||
begin
|
||||
currentno := ItemBankFrm.BankInfo.NTFItems + 1;
|
||||
TFItemNoEdit.Text := IntToStr(currentno);
|
||||
currentno := StrToInt(MinorCodeEdit.Text);
|
||||
MinorCodeEdit.Text := IntToStr(currentno + 1);
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Canvas.Clear;
|
||||
TFItemNoEdit.Text := IntToStr(ItemBankFrm.BankInfo.NTFItems + 1);
|
||||
MinorCodeEdit.Text := IntToStr(StrToInt(MinorCodeEdit.Text) + 1);
|
||||
ItemStemEdit.Text := '';
|
||||
AnswerEdit.Text := '';
|
||||
jpegnameEdit.Text := 'none';
|
||||
Image1.Canvas.Clear;
|
||||
end;
|
||||
|
||||
initialization
|
||||
|
@ -3,6 +3,8 @@ object KR21Frm: TKR21Frm
|
||||
Height = 227
|
||||
Top = 411
|
||||
Width = 289
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'Kuder-Richardson21Reliability.htm'
|
||||
AutoSize = True
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Kuder-Richarson #21'
|
||||
|
@ -1,11 +1,13 @@
|
||||
object PolyDIFFrm: TPolyDIFFrm
|
||||
Left = 984
|
||||
Height = 413
|
||||
Height = 438
|
||||
Top = 356
|
||||
Width = 657
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'PolytomousDIFAnalysis.htm'
|
||||
AutoSize = True
|
||||
Caption = 'Polytomous Item DIF'
|
||||
ClientHeight = 413
|
||||
ClientHeight = 438
|
||||
ClientWidth = 657
|
||||
OnActivate = FormActivate
|
||||
OnCreate = FormCreate
|
||||
@ -18,7 +20,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 448
|
||||
Height = 25
|
||||
Top = 380
|
||||
Top = 405
|
||||
Width = 54
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
@ -36,7 +38,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 510
|
||||
Height = 25
|
||||
Top = 380
|
||||
Top = 405
|
||||
Width = 76
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
@ -55,7 +57,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 594
|
||||
Height = 25
|
||||
Top = 380
|
||||
Top = 405
|
||||
Width = 55
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
@ -74,7 +76,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 389
|
||||
Height = 25
|
||||
Top = 380
|
||||
Top = 405
|
||||
Width = 51
|
||||
Anchors = [akRight, akBottom]
|
||||
AutoSize = True
|
||||
@ -92,7 +94,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideRight.Control = Panel3
|
||||
AnchorSideBottom.Control = Bevel1
|
||||
Left = 8
|
||||
Height = 356
|
||||
Height = 381
|
||||
Top = 8
|
||||
Width = 437
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
@ -100,7 +102,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
BorderSpacing.Top = 8
|
||||
BorderSpacing.Right = 16
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 356
|
||||
ClientHeight = 381
|
||||
ClientWidth = 437
|
||||
Constraints.MinWidth = 400
|
||||
TabOrder = 0
|
||||
@ -129,7 +131,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Control = GroupVarEdit
|
||||
Left = 249
|
||||
Height = 15
|
||||
Top = 296
|
||||
Top = 321
|
||||
Width = 94
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Bottom = 2
|
||||
@ -144,7 +146,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Control = Panel1
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 339
|
||||
Height = 364
|
||||
Top = 17
|
||||
Width = 187
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
@ -208,7 +210,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Control = GrpOutBtn
|
||||
Left = 204
|
||||
Height = 28
|
||||
Top = 288
|
||||
Top = 313
|
||||
Width = 28
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Bottom = 4
|
||||
@ -225,7 +227,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 204
|
||||
Height = 28
|
||||
Top = 320
|
||||
Top = 345
|
||||
Width = 28
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Bottom = 8
|
||||
@ -243,7 +245,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 249
|
||||
Height = 23
|
||||
Top = 313
|
||||
Top = 338
|
||||
Width = 188
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Bottom = 12
|
||||
@ -260,7 +262,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideRight.Side = asrBottom
|
||||
AnchorSideBottom.Control = GrpInBtn
|
||||
Left = 249
|
||||
Height = 247
|
||||
Height = 272
|
||||
Top = 17
|
||||
Width = 188
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
@ -280,7 +282,7 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideBottom.Control = CloseBtn
|
||||
Left = 0
|
||||
Height = 8
|
||||
Top = 364
|
||||
Top = 389
|
||||
Width = 657
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
Shape = bsBottomLine
|
||||
@ -291,12 +293,12 @@ object PolyDIFFrm: TPolyDIFFrm
|
||||
AnchorSideRight.Side = asrBottom
|
||||
AnchorSideBottom.Control = Bevel1
|
||||
Left = 461
|
||||
Height = 364
|
||||
Height = 389
|
||||
Top = 0
|
||||
Width = 196
|
||||
Anchors = [akTop, akRight, akBottom]
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 364
|
||||
ClientHeight = 389
|
||||
ClientWidth = 196
|
||||
TabOrder = 1
|
||||
object Label4: TLabel
|
||||
|
@ -3,6 +3,8 @@ object RaschFrm: TRaschFrm
|
||||
Height = 419
|
||||
Top = 319
|
||||
Width = 406
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'RaschTestCalibration.htm'
|
||||
AutoSize = True
|
||||
Caption = 'Rasch One Parameter Item Scaling'
|
||||
ClientHeight = 419
|
||||
|
@ -3,6 +3,8 @@ object SpBrFrm: TSpBrFrm
|
||||
Height = 149
|
||||
Top = 373
|
||||
Width = 473
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'Spearman-BrownProphecyReliabilit.htm'
|
||||
AutoSize = True
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Spearman-Brown Prophecy Formula'
|
||||
|
@ -3,6 +3,8 @@ object TestGenFrm: TTestGenFrm
|
||||
Height = 279
|
||||
Top = 166
|
||||
Width = 336
|
||||
HelpType = htKeyword
|
||||
HelpKeyword = 'GenerateSampleTestData.htm'
|
||||
AutoSize = True
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Test Data Generation'
|
||||
|
Reference in New Issue
Block a user