procedure TMainForm.Edit2KeyPress(Sender: TObject; var Key: Char);
var
x : single;
s : string;
begin
If key = #13 then
begin
MainForm.Tag := MainForm.Tag +1; //总题数
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Insert Into tmb (stu_id, testtime,tm, da, bzda, jieguo)');
ADOQuery1.SQL.Add('Values (:aa, :bb, :cc, :dd, :ee, :ff)');
ADOQuery1.Parameters.ParamByName('aa').Value := Form1.Edit1.Text;
ADOQuery1.Parameters.ParamByName('bb').Value := FormatDateTime('yyyy-mm-dd hh:nn:ss',now());
ADOQuery1.Parameters.ParamByName('cc').Value := Trim(Edit1.Text);
ADOQuery1.Parameters.ParamByName('dd').Value := Trim(Edit2.Text);
ADOQuery1.Parameters.ParamByName('ee').Value := 'Edit1.Tag';
ADOQuery1.Parameters.ParamByName('ff').Value := '正确';
ADOQuery1.ExecSQL;
end
else
begin
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Insert Into tmb (stu_id, testtime,tm, da, bzda, jieguo)');
ADOQuery1.SQL.Add('Values (:aa, :bb, :cc, :dd, :ee, :ff)');
ADOQuery1.Parameters.ParamByName('aa').Value := Form1.Edit1.Text;
ADOQuery1.Parameters.ParamByName('bb').Value := FormatDateTime('yyyy-mm-dd hh:nn:ss',now());
ADOQuery1.Parameters.ParamByName('cc').Value := Trim(Edit1.Text);
ADOQuery1.Parameters.ParamByName('dd').Value := Trim(Edit2.Text);
ADOQuery1.Parameters.ParamByName('ee').Value := 'Edit1.Tag';(就是这一行总是报错)
ADOQuery1.Parameters.ParamByName('ff').Value := '错误';
ADOQUery1.ExecSQL;
begin
if edit2.text = '' then edit2.text := '999';
MainForm.Tag := MainForm.Tag + 1; //总题数
if p=0 then
e:=e+1;
if p=1 then
f:=f+1;
if p=2 then
g:=g+1;
if p=3 then
h:=h+1;
If StrToInt(Edit2.Text) = Edit1.Tag then
begin
ListBox1.Items.Insert(0,Edit1.text + Edit2.text +' √');
ListBox1.Tag := ListBox1.Tag + 1; //正确题数
Randomize;
a := Trunc(10+Random(90));
b := Trunc(10+Random(90));
c := Trunc(Random(2));
if c = 0 then
begin
Edit1.Text := InttoStr(a) + '+' + InttoStr(b) + '=';
Edit1.Tag := a+b;
end
else
begin
if a<b then
begin
t := a;
a := b;
b := t;
end;
Edit1.Text := InttoStr(a) + '-' + InttoStr(b) + '=';
Edit1.Tag := a-b;
end;
Edit2.SelStart := 0;
Edit2.Text := '';
Edit2.SetFocus;
end
else
ListBox1.Items.Insert(0,Edit1.text + Edit2.text +' ×');
Randomize;
a := Trunc(10+Random(90));
b := Trunc(10+Random(90));
c := Trunc(Random(2));
if c = 0 then
begin
Edit1.Text := InttoStr(a) + '+' + InttoStr(b) + '=';
Edit1.Tag := a+b;
end
else
begin
if a<b then
begin
t := a;
a := b;
b := t;
end;
Edit1.Text := InttoStr(a) + '-' + InttoStr(b) + '=';
Edit1.Tag := a-b;
end;
Edit2.SelStart := 0;
Edit2.Text := '';
Edit2.SetFocus;
Button1Click(Sender);
x := ListBox1.Tag*100/(MainForm.Tag);
s := #13 + '共做%d题' +#13+#13+#13+ '正确率为:' + #13 +#13+ '%f%%';
Label3.caption := format(s,[MainForm.Tag,x]);
end;
if not (Key in ['0'..'9', #8, #13]) then
begin
Key := #0;
ShowMessage('只能输入数字');
end;
end;
end;
procedure TMainForm.Button3Click(Sender: TObject);
begin
series1.Add(e,'加法',clred);
series1.Add(f,'减法',clgreen);
series1.Add(g,'乘法',clFuchsia);
series1.Add(h,'除法',clpurple);
Button3.onclick:=nil;
end;
end.
'Edit1.Tag'不应该加引号吧?Edit1是个控件,加了引号就不是了