Entwickler-Ecke

Windows API - WM_Keydown über Delphi Anwendung


GericasS - Di 16.10.07 10:12
Titel: WM_Keydown über Delphi Anwendung
Morgen DF,

Zuerst hoffe ich das ich in WindowsAPI richitg bin :oops:

Ich wollte heute mal ein Programm schreiben das der virtuellen Tastatur von Windows nahe kommt, bzw. dessen Funktion beihnhaltet.
Ich hab mir jetzt angeschaut, wie ich die einzelnen Funktionen wie Taskleiste öffnen etc. anspreche. Jetzt bin ich zu den Pfeiltasten gelangt. Wenn ich nun die Taste für "Start" drücke öffnet sich die Taskleiste, schön und gut, aber wenn ich jetzt die Pfeiltasten in meinem Programm anwählen will, verschiebt sich mein Programm in den Hintergrund und die Taskleiste schließt sich logischer Weise wieder. Wie kann ich es erreichen dass das Programm im Vordergrund bleibt ?!


So hatte ich mir mein Programm vorgestellt !


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
SendMessage(Application.Handle,WM_KEYDOWN,VK_UP,1);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
SendMessage(Application.Handle,WM_KEYDOWN,VK_DOWN,1);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
SendMessage(Application.Handle,WM_syscommand,SC_TASKLIST,1)
end;

end.


Bei den makierten Stellen bin ich mir nicht so sicher, ist das wie bei den Befehlen für Monitor -> StandBy -> Ausschalten etc ?

Grüße

GericasS


Xion - Di 16.10.07 11:59

Hi,

zur Bedeutung der markierten Stellen:

http://msdn2.microsoft.com/en-us/library/ms646280.aspx (Bsp für WM_KeyDown)


GericasS - Di 16.10.07 12:03

Hey,

habs auch grad gefunden, danke dir trozdem für deine Hilfe !