Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem mit SetFocus und Hotkeys (https://www.delphipraxis.net/87868-problem-mit-setfocus-und-hotkeys.html)

fwsp 6. Mär 2007 15:41


Problem mit SetFocus und Hotkeys
 
hallo,

ich hab ein problem und bekomm es nicht allein hin. ich möchte mittels Hotkey ([Win] + [Q]) den Focus in die Eingabemaske einer ComboBox setzen, gelingt mir nur leider nicht. Der Hotkey wird richtig gesetzt, nur klappt das SetFocus nicht so ganz.
Delphi-Quellcode:
procedure TFBand.WMHotKey(Var Msg: TWMHotkey);
begin
  if Msg.idHotKey = HotkeyID then
  begin
    ComBo.Text := 'hallo'; // dieser Text erscheint korrekt.
    ComBo.SetFocus; // Das klappt leider nicht.
  end;
  inherited;
end;
kann mir jemand verraten, was ich probieren könnte?

TonyR 6. Mär 2007 15:53

Re: Problem mit SetFocus und Hotkeys
 
Ich habe das mal bei mir probiert...
Delphi-Quellcode:
combobox1.Text:='Hallo';
combobox1.SetFocus;
... und das funktioniert....
also (um dem Problem mal näher zu kommen, ohne es zu lösen) kann es ja nur daran liegen, dass die Combobox den Fokus wieder verliert... dass also eine andere Komponenten den Fokus "erhascht"...
An was anderem kann es ja glaub ich nicht liegen... wenn du anderen Komponenten "von Hand" irgendwo in deinem Source den Fokus zuweis, könntest du das ja mit Haltepunkten herausfinden...

ansonsten (also wenn es an etwas anderen liegt, wovon ich leider stark ausgehe :( ) kann ich dir auch nicht helfen...

fwsp 6. Mär 2007 16:13

Re: Problem mit SetFocus und Hotkeys
 
es scheint wirklich so, als ob die combobox den fokus wieder verliert. wie kann ich dies verhindern?

TonyR 6. Mär 2007 16:29

Re: Problem mit SetFocus und Hotkeys
 
Ich weis nicht, ob das vllt eine etwas unsaubere Art ist, aber man könnte das doch mit einer Schleife oder einem Timer immer wieder Fokussieren bis der User die ComboBox angeklickt hat...

Oder man setzt irgendeine Variable auf true, wenn der Hotkey gedrückt wurde... und gibt den Fokus der ComboBox im OnEnter der anderen Komponenten (wenn die Var true ist)

Die Varianten sind alle ein bisschen doof, finde ich...

Ich würde aber zuerst mal versuchen rauszufinden, wo die ComboBox den Fokus verliert... weil das passiert doch rein theoretisch nicht von alleine, oder?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz