Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.13;
Скачать: CL | DM;

Вниз

Сложение,вычитание   Найти похожие ветки 

 
Алексей2   (2005-10-18 22:19) [0]

Как допустим ввести два слагаемых в edit  и что бы в другом edit показало ответ?
Или  как сделать так чтобы например, мне даны  слагаемых мне надо написать ответ, если ответ правильный появилось слово правильно.
Покажите пожалуйста образец!


 
Zeqfreed ©   (2005-10-18 22:56) [1]

Алексей2   (18.10.05 22:19)

> Как допустим ввести два слагаемых в edit  и что бы в
> другом edit показало ответ?

...

type
 TForm1 = class(TForm)
   edOp1: TEdit;
   edOp2: TEdit;
   edRes: TEdit;
   procedure FormCreate(Sender: TObject);
 private
  procedure edOpsKeyPress(Sender: TObject; var Key: Char);
  procedure edOpsChange(Sender: TObject);
 public
   { Public declarations }
 end;

...
implementation
...

procedure TForm1.edOpsKeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ["0".."9", #8]) then Key := #0;
end;

procedure TForm1.edOpsChange(Sender: TObject);
var
op1, op2 : String;
i1, i2 : Integer;
begin
with Form1 do begin
 op1 := edOp1.Text;
 op2 := edOp2.Text;

 try
  i1 := StrToInt(op1);
  i2 := StrToInt(op2);

  edRes.Text := IntToStr(i1 + i2);
 except
  edRes.Text := "error";
 end;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
edRes.ReadOnly := true;
edRes.Font.Style := [fsBold];
edRes.Font.Color := clRed;

edOp1.Text := "1";
edOp2.Text := "2";

edOp1.OnKeyPress := edOpsKeyPress;
edOp2.OnKeyPress := edOpsKeyPress;

edOp1.OnChange := edOpsChange;
edOp2.OnChange := edOpsChange;

edOp1.OnChange(self);
end;

end.


Например, так. А теперь, полагаю, объяснить надо как это все работает? Или это, в общем-то, не важно? :)


 
zero   (2005-10-19 19:04) [2]

а разве нельзя проще как на pacаle?


 
V0RoN   (2005-10-19 20:14) [3]

сравнение с ответом
symma := StrToInt(edit1.text) + StrToInt(edit2.text);
otvet := edit3.text
If otvet = symma Then
ShowMessage("ПРАВИЛЬНО!");


сложение
symma := StrToInt(edit1.text) + StrToInt(edit2.text);
edit3.text := IntToStr(symma)


 
V0RoN   (2005-10-19 20:16) [4]

Сорри, не то написал:

symma := StrToInt(edit1.text) + StrToInt(edit2.text);
otvet := StrToInt(edit3.text);
If otvet = symma Then
ShowMessage("ПРАВИЛЬНО!");


 
Zeqfreed ©   (2005-10-19 21:12) [5]

zero   (19.10.05 19:04) [2]
Разве [1] сложно?


 
Алексей2   (2005-10-25 10:25) [6]

Zeqfreed ©
обясни как работает [1]



Страницы: 1 вся ветка

Текущий архив: 2005.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
2-1129566424
yura32
2005-10-17 20:27
2005.11.13
IdHTTPServer1


14-1130088231
alexsis
2005-10-23 21:23
2005.11.13
Бесплатный посыл СМС-ок


3-1128347433
Антон1209
2005-10-03 17:50
2005.11.13
параметры TSQLDataSet


3-1128082475
Top
2005-09-30 16:14
2005.11.13
(Оракля)Как организовать автоперемотку сиквенса в ADO


14-1130069324
Nikolay M.
2005-10-23 16:08
2005.11.13
Питьевые качества 5-летнего коньяка в алюминиевой фляжке - ?