Einzelnen Beitrag anzeigen

ernschd

Registriert seit: 16. Jan 2008
166 Beiträge
 
Delphi XE8 Professional
 
#1

Fokus bleibt bei TUpDown hängen

  Alt 17. Aug 2012, 09:04
Hallo,

ich habe in meinem Programm ein seltsames Verhalten: ich habe ein Editfeld, dazu eine TUpDown-Komponente, die dem Editfeld mit Associate zugewiesen ist. Wenn ich nun den (numerischen) Wert im TEdit mit Up oder Down verändere, und direkt danach eine Aktion ausführe, reagiert die TUpDown-Komponente bei jedem Klick auf dem Formular, egal wo. Ich habe hier mal einen Beispielcode, wo ich statt meiner Aktion einfach ein Showmessage aufrufe, um das ganze zu verdeutlichen.

Delphi-Quellcode:
procedure TForm1.UpDown1ChangingEx(Sender: TObject; var AllowChange: Boolean;
  NewValue: Smallint; Direction: TUpDownDirection);
begin
    UpDown1.Tag := StrToInt(Edit1.Text);
    UpDown1.Tag := UpDown1.Tag + NewValue;
    Edit1.Text := Format('%.7d', [UpDown1.Tag]);
    ShowMessage('ok');
    AllowChange := False;
end;
Kann das Verhalten noch jemand nachvollziehen? Oder besser: hat jemand einen Vorschlag, wie ich den mehrfachen Aufruf verhindern kann?

Gruß,
ernschd
  Mit Zitat antworten Zitat