è possibile sapere se la mia Form/Finestra è visibile sullo schermo o è nascosta da qualche altra finestra?
è possibile sapere se la mia Form/Finestra è visibile sullo schermo o è nascosta da qualche altra finestra?
Prova con GetForegroundWindow
https://msdn.microsoft.com/it-it/lib...(v=vs.85).aspx
se intendi sapere se la finestra è sopra a tutte e riceve l' input.
Se invece vuoi sapere se è TUTTA visibile anche se non riceve l' input... potresti provare controllando la WindowFromPoint
https://msdn.microsoft.com/it-it/lib...(v=vs.85).aspx
in diversi suoi punti.
Ultima modifica di eziogsv; 28-11-2017 a 19:06
vorrei sapere se è tutta visibile la finestra, ho provato con:ma non funziona, esiste qualche altro sistema?codice:Private Declare Function WindowFromPoint Lib "user32" (ByVal xpoint As Long, ByVal ypoint As Long) As Long .. Dim w = WindowFromPoint(Me.Left, Me.Top) If w = Me.Handle Then MsgBox("")
Gli Handle non sono più Long da un bel pò... sono IntPtr. Vedi la dichiarazione corretta:
http://www.pinvoke.net/default.aspx/...indowfrompoint
Hai importato le System.Runtime.InteropServices ?
Dichiara sempre le variabili: Dim w as IntPtr
Per controllare se la finestra è TUTTA visibile non basta un solo PUNTO... controlla almeno i 4 vertici (magari dentro di 2 o 3 pixel) e magari il centro.
Per controllare come mai non funziona inserisci un bel Debug.Print(w.ToString & " - " & Me.Handle.ToString) di verifica
Ultima modifica di eziogsv; 29-11-2017 a 21:07