vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Probleme mit Fensterfokus 
Autor: KlyX
Datum: 31.08.04 22:13

Hallo zusammen

Folgendes:
Für mein Projekt brauche ich die ganzen Fokus-Sachen von VB.

Ich habe ein Hinterhrundfenster. Dieses soll permanent sichtbar sein und alles überdecken, Fenster die sich darauf öffnen natürlich nicht

Soweit so gut.... Damit nun das erste Fenster auch sicher nicht in den Hintergrund fällt benutzte ich folgenden Code:

Option Explicit
 
' benötigte API-Deklarationen
Private Declare Function SetWindowPos Lib "user32" ( _
  ByVal hwnd As Long, _
  ByVal hWndInsertAfter As Long, _
  ByVal x As Long, _
  ByVal y As Long, _
  ByVal cx As Long, _
  ByVal cy As Long, _
  ByVal wFlags As Long) As Long
 
Private Declare Function ShowWindow Lib "user32" ( _
  ByVal hwnd As Long, _
  ByVal nCmdShow As Long) As Long
 
Private Const HWND_TOPMOST As Long = -1
Private Const SWP_NOACTIVATE As Long = &H10
Private Const SWP_NOMOVE As Long = &H2
Private Const SWP_NOSIZE As Long = &H1
Private Const SW_SHOWNOACTIVATE = 4
 
Private Sub Form_Load()
Load Welcome
ShowWindow Welcome.hwnd, SW_SHOWNOACTIVATE
SetWindowPos Welcome.hwnd, HWND_TOPMOST, 0, 0, 0, 0, _
  SWP_NOACTIVATE + SWP_NOMOVE + SWP_NOSIZE
 
MDMskin1.Skin                       ' Den Skin aktivieren
End Sub
Gibt dem Fenster nicht den Fokus, fällt aber dennoch nicht in den Hintergrund. Eine super Sache...
Nun muss dann aber bei einem Klick auf einen Button ein Fenster kommen, das man nicht mehr in den Hintergrund bekommt. Der entsprechende Typ hat leider nicht funktioniert:
Option Explicit
 
' alle benötigten API-Deklarationen
Private Declare Function SetWindowPos Lib "user32" _
  (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
  ByVal x As Long, ByVal y As Long, ByVal cx As Long, _
  ByVal cy As Long, ByVal wFlags As Long) As Long
 
Private Declare Function GetWindowLong Lib "user32" _
  Alias "GetWindowLongA" (ByVal hwnd As Long, _
  ByVal nIndex As Long) As Long
 
Private Declare Function SetWindowLong Lib "user32" _
  Alias "SetWindowLongA" (ByVal hwnd As Long, _
  ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
 
Private Const SWP_FRAMECHANGED = &H20
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1
Private Const SWP_NOZORDER = &H4
Private Const SWP_NOACTIVATE = &H10
Private Const SWP_REFRESH = SWP_NOZORDER Or _
  SWP_NOSIZE Or SWP_NOMOVE Or SWP_NOACTIVATE Or _
  SWP_FRAMECHANGED
 
Private Const GWL_STYLE = (-16)
 
Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_MINIMIZEBOX = &H20000
 
Private Const HWND_TOPMOST = -1
 
Private Sub Form_Load()
TopWindow Me.hwnd
   MDMskin1.Skin                       ' Den Skin aktivieren
End Sub
Danke für Hilfe
KlyX
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Probleme mit Fensterfokus781KlyX31.08.04 22:13
Re: Probleme mit Fensterfokus423Remirror02.09.04 21:17

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel