2009-08-21 7 views
0

Ich habe eine Anwendung für .NET-Anwendungen (C#, WinForms) unter Windows XP. Wenn ich meine Anwendung minimiere und mehrere andere Fenster in der Taskleiste minimiert habe und auf meine Anwendung (in der Taskleiste) klicke, sehe ich oft die Taskleiste "icon" blinken, aber meine Anwendung kann ihr Fenster nicht "wiederherstellen". Irgendwelche Vorschläge zu was könnte dies verursachen? Irgendwelche Hinweise, um zu überprüfen, ob meine Anwendung durch den Mausklick kein Ereignis erhält.Die Anwendung empfängt kein Ereignis, wenn sie auf die Taskleiste geklickt wird.

UPDATE: Kann jemand ein Beispiel geben, wie man ankommende Ereignisse zu einer Anwendung ausgibt. Etwas, das mir erlaubt, z.B. Drucken Sie die empfangenen Ereignisse mit Console.Writeline(), um zu sehen, ob meine Anwendung ein Ereignis erhält, wenn ich auf die Taskleiste klicke?

+0

Windows ist mit ähnlichen Fehlern übersät. Häufiger ist, dass das Betriebssystem ein Fenster nicht minimiert, wenn auf die Schaltfläche in der Taskleiste geklickt wird, oder das Relief der Taskleistenschaltfläche nicht mit dem aktuellen fokussierten Fenster synchronisiert. –

Antwort

1

http://www.catch22.net/software/winspy-17

Ich wage die App im Fokus zu erraten, dass sein wird.

+0

Ich werde das Windows-Spy-Tool definitiv ausprobieren. Was meinst du mit "meine App wird genau im Fokus"? Dass meine App "fokussiert", aber nicht maximiert wird? –

+0

Ich denke, dass Ihr Fenster den Fokus erhält, aber es ist Koordinaten, um zu verhindern, dass es auf Ihrem Monitor (s) zu sehen ist. – GregC

+0

Drücken Sie Alt-Space, M und dann die Pfeiltasten auf der Tastatur und bewegen Sie die Maus. Fenster sollte jetzt auf einem der Bildschirme sein. – GregC

0

AFAIK das sollte nichts mit Ihrer Anwendung zu tun haben. Gibt es noch eine andere Anwendung, die immer oben bleibt?

+0

Das war meine Annahme auch. Ja, es laufen noch andere Anwendungen (zB Ein Browser und Notizblock), aber alle anderen Apps reagieren perfekt auf Klicks in der Taskleiste. –

+0

Nun, in diesem Fall liegt alles daran, was auch immer Windows macht/nicht tut. AFAIK gibt es viel, was du dagegen tun kannst. – danish

0

Sie können die Maximierung und Minimierung der Taskleiste in Ihrer App nicht umgehen. Das heißt, du musst nicht. Windows beschäftigt sich damit und so scheint dies in keiner Weise damit zu tun zu haben, dass Ihre App kein Ereignis behandelt, sondern dass Windows etwas tut (oder etwas nicht tut).

+0

Richtig, also jetzt, dass Windows ausfällt. Könnte ich "sniffen", wenn die Anwendung/das .NET-Framework ein Ereignis erhält, wenn ich auf die Taskleiste klicke? –

Verwandte Themen