FocusMe-Funktion
Bringt ein Programmfenster in den Vordergrund. Die Form.Focus-Methode tut das ja leider nicht, wenn gerade eine andere Anwendung aktiv ist. Diese Funktion verwendet dafür eine Win32-API-Funktion, um das Vordergrundfenster zu ändern. Es kann sein, dass diese Vorgehensweise gegen Microsoft-Designrichtlinien verstößt, da die aufrufende Anwendung ohne Schutz sofort den Fokus erhält. In manchen Fällen ist das aber erwünscht. Wenn dieser Schutz greift, wird ein Fenster üblicherweise nicht in der Vordergrund gebracht, sondern der Taskbar-Eintrag blinkt. Aber auch das passiert bei Form.Focus() leider nicht.
Download (CS-Datei, < 1 kB)
// Man kann sie aber auch allgemeiner verfassen, indem man das Form als Parameter
// übergibt und dann auf Form.Handle als Window-Handle zugreift.
[DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
private bool FocusMe()
{
return SetForegroundWindow(Handle);
}
Licence, terms of use
This programme is freely available as source code and compiled version, without restrictions (“public domain”). There is no warranty, not even for merchantability or fitness for a particular purpose. I am not liable for any damage caused through appropriate or inappropriate use.


Statistik wird geladen...