Autor Beitrag
löschi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 44



BeitragVerfasst: Mi 15.01.03 21:42 
Hallo,erst ma!

möchte über ein edit (Ereignis OnChange) eine Zahl auslesen. Beispiel:
ausblenden Quelltext
1:
Edit1.Text := 10.3					

möchte jetzt mit der Zahl vor dem Punkt mit Locate nach dem 10ten Datensatz suchen, oder dem 1ten je nachdem was für eine Zahl vor dem Punkt steht.
ausblenden Quelltext
1:
adoquery4.Locate('id',edit1.text,[]);???????????					

mit der Zahl hinter dem Punkt soll was ausgeführt werden. Beispiel:
ist die Zahl 4 dann mache was,
ist die Zahl 5 dann mache was anderes

kann mir jemand dabei helfen???
löschi

Moderiert von user profile iconTino: Code-Tags hinzugefügt.
CenBells
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1547

Win 7
Delphi XE5 Pro
BeitragVerfasst: Do 16.01.03 01:08 
hallo,
also erstmal würde ich nicht onchange verwenden, da du dann nicht weißt, ob noch eingaben kommen, oder ob die zahl wirklich zuende ist.

Beispiel:
Eingabe soll 10.3 sein, dann wird das onchange aber schon bei 1 ausgelöst....
Also bei onkeydown auf Enter (Key = #13) warten und dann die entsprechende funktion aufrufen.
ausblenden Quelltext
1:
2:
if (key = #13) then
  MAchwas;


Des weiteren musst du die zahl vor dem punkt mit copy auslesen
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
var
  LLocateNr, LBefehlIdx: Integer;
...
begin
...
  LLocateNr := StrToInt(copy(Edit1.text, 1, pos('.',Edit1.Text)-1));
  LBefehlIdx := StrToInt(copy(Edit1.text, pos('.', Edit1.Text), length(Edit1.text)));
  case LBefehlIdx Of
  1: MachA;
  2: MachB;
  .
  .
  .
  end;  {case}
...


Gruß
KEn
löschi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 44



BeitragVerfasst: Do 16.01.03 09:30 
hi KEn!
hab das ma ausprobiert. funzt aber nich. kommt fehlermeldung: '.3' ist kein integerwert
gruß löschi
Mash
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 16.01.03 09:43 
Moin,

ich denke, Du bist schon selbst darauf gekommen, aber trotzdem:

ausblenden Quelltext
1:
2:
3:
...
LBefehlIdx := StrToInt(copy(Edit1.text, pos('.', Edit1.Text) + 1, length(Edit1.text))); 
...


Gruß
mash
löschi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 44



BeitragVerfasst: Do 16.01.03 09:47 
danke !!!!!!!!!!!
funzt, bin halt nich der superprogger
löschi