Danke euch beiden. Das mit dem OnKeyPress habe ich ausprobiert, ist aber auch bisschen kritisch. Der simpelste Weg ist das mit dem ReadOnly - das klappt gut. Gespeichert sind die Eingaben schon (meiner Meinung nach) in Variablen. Ich hatte mir gedacht, dass eine weitere Variable (csEingabe3) deklariert und mit der dritten Zeile initialisiert wird:
csEingabe3 := resultMemo.Lines[3];
if csEingabe3 = '' then...
..das klappt aber nicht so, da dann direkt die erste Eingabe nicht dem Datentyp entspricht.
Code:
procedure TForm1.enterBtnClick(Sender: TObject);
var neErgebnis : extended;
neEingabe1 : extended;
neEingabe2 : extended;
begin
csRechenart := resultMemo.Lines[1];
neEingabe1 := StrToFloat( resultMemo.Lines[0] );
neEingabe2 := StrToFloat( resultMemo.Lines[2] );
if csRechenart = '/' then begin
neErgebnis := ( neEingabe1 / neEingabe2 );
resultPanel.Caption := 'Ihr Ergebnis: ' + FloatToStr( neErgebnis );
end;
if csRechenart = '*' then begin
neErgebnis := ( neEingabe1 * neEingabe2 );
resultPanel.Caption := 'Ihr Ergebnis: ' + FloatToStr( neErgebnis );
end;
if csRechenart = '+' then begin
neErgebnis := ( neEingabe1 + neEingabe2 );
resultPanel.Caption := 'Ihr Ergebnis: ' + FloatToStr( neErgebnis );
end;
if csRechenart = '-' then begin
neErgebnis := ( neEingabe1 - neEingabe2 );
resultPanel.Caption := 'Ihr Ergebnis: ' + FloatToStr( neErgebnis );
end;
end;