Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - edit und selectnext


Chatfix - Mo 25.11.02 19:15
Titel: edit und selectnext
hi leutz mal wieder ein problemchen gg

ich erzeuge ein paar edits (und labels):


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
for i:=0 to form1.anzahlnamen-1 do
  begin
    if height+107+atop < screen.Height-100 then
      height:=107+atop;
    namenlabel:=Tlabel.Create(form6);
    with namenlabel do
    begin
      name:='Label'+inttostr(i+1);
      Parent:=Form6;
      Font.Color:=clblack;
      AutoSize:=true;
      Caption:=form2.namen.Strings[i];
      Left:=120;
      Top:=atop+2;
    end;
    punkteedit:=TEdit.Create(form6);
    with punkteedit do
    begin
      name:='Edit'+inttostr(i+1);
      parent:=Form6;
      text:='';
      left:=10;
      width:=100;
      top:=atop;
      taborder:=i;
      tabstop:=true;
      onkeypress:=gewinneditKeyPress;
      onkeydown:=mEdit1KeyDown;
    end;
    atop:=atop+25;
  end;


unter mEdit1KeyDown steht folgender code:


Quelltext
1:
2:
if key=VK_RETURN then
    SelectNext(self,false,true);


Wenn ich nun ein paar edits habe springt er bei ENTER aber nicht ins nächste sondern immer ins letzte...

leider weiss ich nicht warum *gg* ich hoffe ihr


wulfskin - Mo 25.11.02 20:11

Hi ChatFix!

Auch hier trifft wieder das bekannte Sprichwort zu: "Wer lesen kann, ist klar im Vorteil". Denn könntest du mit der Hilfe richtig umgehen, hättest du auch folgendes gefunden:
Zitat:
[..]Hat GoForward den Wert True, werden die Komponenten vorwärts durchlaufen, andernfalls rückwärts.(..)
Der 2te Parameter muss also True sein!

Gruß wulfskin!


Chatfix - Mo 25.11.02 20:14

ja und probieren geht über studieren ;) wenn ich den 2. Parameter auf true setz springt er immer ins erste edit;)

glaubst du das ich sowas nicht probiert hätte ;)

naja villeicht kann ja mal jmd was posten was mir weiterhelfen könnte


wulfskin - Mo 25.11.02 20:16
Titel: Re: edit und selectnext
Achja, ich glaub ich habe nochmal ein Fehler gefunden:
Chatfix hat folgendes geschrieben:

Quelltext
1:
2:
if key=VK_RETURN then
    SelectNext(self,false,true);
sollte eigentlich doch so heissen:

Quelltext
1:
2:
  if Key = VK_RETURN then
    SelectNext(TWinControl(Sender), True, True);
Gruß wulfskin!

Nachtrag: Wenn das net hilft, weiss ich auch net weiter....


Chatfix - Mo 25.11.02 20:20

ok jetz funztz ...

DANKE!!!!