Entschuldigen Sie den vagen Titel, aber dieser ist schwer zu erklären.
Ich verwende Windows Vista bei der Arbeit für die Webentwicklung und manchmal, wenn ich auf das Hintergrundfenster klicke oder die Alt-Tab-Taste drücke, erhält das Fenster den Fokus, wird jedoch nicht in den Vordergrund gebracht.
Um das Fenster nach vorne zu bringen, muss ich auf den Rand der Anwendung klicken (wenn der Größenänderungscursor angezeigt wird) und das Fenster wird dann nach vorne springen.
Ich habe dieses Problem seit ungefähr einem Jahr und es passiert mindestens ein Dutzend Mal am Tag, aber es tut dies nicht die ganze Zeit - scheint zufällig.
Ich hoffe, ich habe das Problem vollständig erklärt (und Sie haben es verstanden) und würde mich über konstruktive Antworten oder Kommentare zur Lösung dieses Problems freuen.
Beispiel: Wenn ich die Alt-Tab-Taste von Google Chrome in den Editor drücke und dieses Problem zufällig auftritt, bleibt Google Chrome vor dem Editor. Ich kann jedoch Text in den Editor eingeben, während sich das Fenster hinter Google Chrome befindet. Wenn Sie auf den Inhaltsbereich von Notepad klicken, wird dieser nicht in den Vordergrund gerückt, sondern durch Klicken auf den Fensterrand.
Video Exampe
In diesem Video habe ich von Google Chome auf UltraEdit geklickt und Chrome blieb in der Schriftart, aber wie Sie sehen, kann ich UltraEdit weiterhin eingeben.
Ich fange an zu glauben , dass dies könnte einen Fehler in Google Chrome, damit ich , wenn diese zwischen anderen Anwendungen beobachten , werde weiterhin.
quelle
Antworten:
Im Fall von Chrome handelt es sich um ein bekanntes Problem: Immer im Vordergrund stehendes Verhalten von Chrome-Fenstern
Eine schnelle Lösung für dieses Problem besteht darin, das Chrome-Fenster auszuwählen und zweimal F11 zu drücken.
quelle
Wie sieht es aus?
Es gibt nur ein Verhalten in der Nähe dieses Problems, und das ist das Always On Top- Verhalten.
Ein Teil des Codes, vielleicht aus dem Programm selbst, könnte die Eigenschaft Ihres Fensters ändern ...
Wie soll ein Fenster "Immer im Vordergrund" sein?
Wie man ein Formular erstellt, das immer im Vordergrund bleibt, zeigt uns, dass SetWindowPos mit dem zweiten auf HWND_TOPMOST gesetzten Parameter aufgerufen wird. Dadurch wird es sofort im Vordergrund platziert und bleibt so.
Nach einer schnellen Google- Suche zeigt dieses Ergebnis , dass User32.dll der Eigentümer dieser Funktion ist.
Wer setzt mein Fenster auf "Always On Top"?
Nachdem wir nun wissen, welche Funktion aufgerufen wird, möchten wir wissen, wann diese Funktion aufgerufen wird. Dazu müssen wir Stack-Traces erstellen und analysieren. Das Windows Performance Toolkit kann dies. Wir können jedoch sehr froh sein, dass Rohitab Batra den fantastischen Api-Monitor geschrieben hat .
Sorry, aber das sind harte Hausaufgaben:
Gehe zu
und dann
Nun möchten Sie einige Prozesse einbinden. Achtung: Sortieren Sie nach PID und schließen Sie sich nicht an
winlogon.exe
oder an etwas, das eine niedrigere PID als diese hat. Andernfalls können Sie Ihr System zum Absturz bringen oder zum Stillstand bringen. Möglicherweise tritt dieses Verhalten auch bei anderen Prozessen auf, aber es ist ein Versuch und Irrtum, festzustellen, welche Sie einbinden können. So:winlogon.exe
.Suchen Sie nach einem API-Aufruf, der folgendermaßen aussieht:
SetWindowPos (0x000000000002043c, HWND_BOTTOM | 0x00000000fffffffe , 0, 0, 0, 0,
SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE)
Ein Aufruf von SetWindowPos mit HWND_BOTTOM | 0x00000000fffffffe ( -2 + 1 = -1 = HWND_TOPMOST ) ist das, wonach wir streben, und der Prozess, der diesen Aufruf ausführt , ist derjenige, den Sie für Ihr Problem verantwortlich machen sollten.
Ich gebe auf ... Wie kann ich mein "Always On Top" -Problem beheben?
Bekämpfe Feuer mit Feuer, wir werden alle Fenster auf HWND_NOTOPMOST setzen .
Huch, Programmierung! Dies kann aber auch einfach durch Skripten geschehen ...
Also eine sehr einfache Hausaufgabe:
Laden Sie AutoIt v3 herunter .
Erstellen Sie eine ByeByeTopMost.au3- Datei, die Folgendes enthält:
Legen Sie es in Ihren Startordner und führen Sie es aus oder starten Sie es neu.
Oder wenn Sie Hausaufgaben überhaupt nicht mögen, laden Sie diese Zip-Datei herunter, die ich erstellt habe.
Habe Spaß... :-)
PS: In diesem letzten Fall können Sie die Funktion "Immer im Vordergrund" nicht verwenden. Entweder Fehlerbehebung oder Umgehung ... ;-)
quelle
Um dies zu deaktivieren, müssen Sie drücken
ALT + Leertaste + C
alt+ space+c
Nach dem Drücken dieser Tasten wird der Google Chrome Browser automatisch geschlossen. Starten Sie dann erneut den Google Chrome Browser.
Das Problem wird für immer gelöst sein :)
quelle
Habe auch dieses Problem und finde einen Weg, es zu umgehen. Ich habe die Software "Always on Top" installiert .
Und ich benutze es auf Chrome für Windows, das den Status der Eigenschaft geändert hat
alwaysontop
.quelle
Eine schnelle Lösung besteht darin, in Windows 7/8 / 8.1 ganz rechts auf der Taskleiste zweimal auf die Schaltfläche "Desktop anzeigen" zu klicken
quelle
Ich hatte das gleiche Problem und konnte es beheben, indem ich im Startmenü auf "Benutzer wechseln" ging und nach dem erneuten Anmelden in den Fenstern die Symbolleiste wieder respektierte. Es schien sich auf alle Fenster auszuwirken und obwohl Chrom eine Ursache sein könnte, schien es sich definitiv auf das gesamte Windows-System auszuwirken, was auf einen möglichen Schuldigen innerhalb von Windows selbst hindeutet. Diesen Beitrag nach meinem ersten Start mit dem Problem zu verfassen, nachdem ich 5 Jahre lang Chrome-Nutzer unter Windows XP und Windows 7 war.
quelle
Nun, ich hatte das gleiche Problem, und durch zweimaliges Antippen von F11 konnte nichts behoben werden. Da jedoch zwei Google Chrome-Fenster geöffnet waren, sah ich, dass sich nur eines von ihnen über jedem anderen Fenster befand (Steam, Notepad usw.). Ich nahm dann einen der immer am Anfang befindlichen Reiter und machte ein neues Fenster damit und nahm dann jeden anderen Reiter vom oberen Fenster zum neuen. Jetzt erscheint jedes Fenster oben, wenn ich es wie gewohnt auswähle.
Hoffe das kann helfen :)
quelle
Öffnen Sie Chrome und drücken Sie ALT + Leertaste + C
quelle