Autor Beitrag
Kuja
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Di 23.05.06 18:06 
Hallo,

habe jetzt lange gesucht aber nichts gefunden, diese Frage ist aber bestimmt leicht zu lösen! ;)

Wie erkennt mein Programm, welche Eingabe der Benutzer in das Edit Feld vornimmt?

Danke und viele Grüße,

Kuja


Moderiert von user profile iconGausi: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mi 24.05.2006 um 14:00
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: Di 23.05.06 18:17 
Gehts es dir auf das erkennen der Eingabe oder den Inhalt?

1. .onChange() 2. .Text

_________________
Markus Kinzler.
Kuja Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Di 23.05.06 18:21 
Es geht um den Inhalt.

Es soll geprüft werden, ob der eingegebene Wert eine bestimmte Eigenschaft erfüllt.

Also nehme ich an das dies durch .Text ermöglicht wird, allerdings bietet die Delphi Hilfe da keine wirklichen Lösungsansätze (habe Delphi 3).

Wie binde ich .Text ein?

Danke und viele Grüße,

Kuja
_frank_
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 343
Erhaltene Danke: 1

Win XP
Delphi 3 Prof / Turbo Delphi Explorer
BeitragVerfasst: Di 23.05.06 18:26 
wenn du ein bisschen konkreter werden würdest könnte man dir sicher schneller helfen...

.Text ist eine die Eigenschaft des edit-feldes, die den aktuellen String des edits ethält.
somit könntest du per

if copy(edit1.text,3,1)='p' then ...

prüfen, ob der 3. buchstabe ein kleines p ist.

HTH Frank
Kuja Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Di 23.05.06 18:30 
Hallo,

ok ich versuche konkreter zu werden. :)

Der Benutzer gibt einen Wert in das Edit Feld ein und durch Klick auf einen Button soll geprüft werden, ob n (=der eingegebene Wert) gerade oder ungerade ist.

Ich war bis hier gekommen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.Button1Click(Sender: TObject);
begin
     if n mod 2 = 0 then
     begin
     showmessage ('Die Zahl n ist gerade.');
     end
     else
     begin
     if n mod 2 > 0 then
     begin
     showmessage ('Die Zahl n ist ungerade.');
     end
     end
end;


Nun verständlich? :)

Muss nun halt irgendwie die Eingabe erkennen, die der Benutzer in das Edit Feld vornimmt.
DelphiAnfänger
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 112

Win XP, Firefox 2.0, IE6
Delphi 5 Prof., Delphi 2005 PE
BeitragVerfasst: Di 23.05.06 18:33 
user profile iconKuja hat folgendes geschrieben:
Hallo,

ok ich versuche konkreter zu werden. :)

Der Benutzer gibt einen Wert in das Edit Feld ein und durch Klick auf einen Button soll geprüft werden, ob n (=der eingegebene Wert) gerade oder ungerade ist.

Ich war bis hier gekommen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm1.Button1Click(Sender: TObject);
Var n:integer; //das brauchst du nur wenn du die Variable n nicht als globale Variable definiert hast 
begin
     n:=strtoint(Edit1.text);
     if n mod 2 = 0 then
     showmessage ('Die Zahl n ist gerade.');
     if n mod 2 > 0 then
     showmessage ('Die Zahl n ist ungerade.');
end;


Nun verständlich? :)

Muss nun halt irgendwie die Eingabe erkennen, die der Benutzer in das Edit Feld vornimmt.

das iss sehr viel verständlicher
Edit: hab grad gesehen dass du viele begins und ends weglassen kannst habs oben grad geändert


Zuletzt bearbeitet von DelphiAnfänger am Di 23.05.06 18:37, insgesamt 1-mal bearbeitet
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Di 23.05.06 18:37 
hallo,

odd (engl. merkwürdig - hier:ungerade) verrät dir auch, ob der wert gerade ist bzw ungerade:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
begin
 if odd(StrToint(edit1.text)) = true then
  ShowMessage('Die Zahl ist ungerade!')
   else
    ShowMessage('Die Zahl ist gerade!')
end;


mfg
_frank_
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 343
Erhaltene Danke: 1

Win XP
Delphi 3 Prof / Turbo Delphi Explorer
BeitragVerfasst: Di 23.05.06 18:37 
klicke mal doppelt auf das edit-feld...

delphi generiert dir ein konstrukt für das OnClick-event des edit-feldes:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
procedure TForm1.Edit1Change(Sender:TObject);
begin

end;


das begin machst du weg und fügst folgends ein:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
var n:integer;
begin
  try
    n:=StrToInt(edit1.text);
  finally
  //hier dein code
  end;

Moderiert von user profile iconjasocul: Delphi-Tags eingefügt
Kuja Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Di 23.05.06 18:56 
Hallo,

danke für die vielen Antworten, aber das

n:=strtoint(Edit1.text);

war alles was ich wollte! ;)

Danke und viele Grüße,

Kuja