Scusami forse era meglio se te lo convertivo gia' in VB.NET
Fai un modulo e metti
Poi nella form concodice:Module Module1 Declare Function SetWindowPos Lib "user32" (ByVal hwnd As IntPtr, ByVal hWndInsertAfter As Integer, ByVal x As Integer, ByVal y As Integer, ByVal cx As Integer, ByVal cy As Integer, ByVal wFlags As Integer) As IntPtr Public Const SWP_FRAMECHANGED = &H20 Public Const HWND_TOP = 0 Public Const HWND_TOPMOST = -1 Public Const HWND_NOTOPMOST = -2 Public Const SWP_DRAWFRAME = SWP_FRAMECHANGED Public Const SWP_HIDEWINDOW = &H80 Public Const SWP_NOACTIVATE = &H10 Public Const SWP_NOCOPYBITS = &H100 Public Const SWP_NOMOVE = &H2 Public Const SWP_NOOWNERZORDER = &H200 Public Const SWP_NOREDRAW = &H8 Public Const SWP_NOREPOSITION = SWP_NOOWNERZORDER Public Const SWP_NOSIZE = &H1 Public Const SWP_NOZORDER = &H4 Public Const SWP_SHOWWINDOW = &H40 Public Sub FormOnTop(ByVal frm As Form, ByVal VF As Boolean) ' Questa procedura permette di impostare sempre in primo piano un form rispetto alle altre finestre ' frm ---> form su cui agisce la procedura ' vf ---> se true il form è visualizzato in primo piano Select Case VF Case True SetWindowPos(frm.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOSIZE Or SWP_NOMOVE) Case False SetWindowPos(frm.Handle, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOSIZE Or SWP_NOMOVE) End Select End Sub End Module
codice:FormOnTop(Me, True) 'la metti in primo piano FormOnTop(Me, True) 'la rimetti normale

Rispondi quotando