nach einem kleinen Proberun mit Keypress bin ich schwer verwirrt und fürchte, dass da noch große Defizite beim Verständnis mit OOP und Lazarus vorliegen, Folgendes:
Ich habe eine Form1 mit einem Label in der Mitte und möchte über w-a-s-d die Position verändern
Code: Alles auswählen
procedure TForm1.Formkeypress(Sender: Tobject; var Key:char);
begin
if key='w' then Label1.Top:=Label1.Top-1;
if key='s' then Label1.Top:=Label1.Top+1;
end;
Was mich hingegen fertig macht, ist die Tatsache, dass die gesamte Abfrage nicht mehr hinhaut, sobald ich auf meiner Form einen Button platziere - ganz unabhängig davon, ob ich hierfür irgendwelche Events usw. festlege, oder nicht. Allein die Tatsache, dass die Form1 auch einen Button enthält, hebelt meine procedure TForm1.Formkeypress anscheinend aus.
nun habe ich zwei Fragen:
a) wie ist das zu erklären (bitte auf dummy-niveau, also wo hängt das Programm jetzt? Kann es sein, dass er nun quasi in einer Wird-der-Button-gedrückt?-Routine verharrt und darum blind für mein Keypress geworden ist? Oder woran liegt es?)
b) wie bringe ich das Prog. dazu, die Eingabe wieder anzunehmen.
schonmal vielen Dank, Jungs, ich weiß, dass es hier ne einfache Erklärung für gibt - aber ich versteh's grad echt nicht...