Come centrare una finestra di messaggio in Visual Basic

August 9

Come centrare una finestra di messaggio in Visual Basic


Microsoft controlli di Visual Basic consentono di visualizzare messaggi del programma in una finestra di dialogo modulo utente. Si utilizza finestre di messaggio quando si desidera chiedere all'utente una domanda o per visualizzare un messaggio di errore e informare l'utente su possibili soluzioni per il problema. I parametri delle coordinate di un modulo che offrono la possibilità di determinare la sua posizione nella finestra aperta. Posizionando una finestra di messaggio al centro di un modulo di Visual Basic, è possibile rendere il testo più visibile all'utente.

istruzione

1 Fare clic su Start in Windows e quindi fare clic su "Microsoft Visual Studio."

2 Fai clic su "File" e poi su "Nuovo" per creare il modulo predefinito "Form1".

3 Aggiungere il seguente codice nella finestra aperta:

tipo RECT

Left As Long

Top As Long

Destra As Long

Inferiore As Long

End Type

Public Declare Function SetWindowPos Lib "user32" ()

Public Declare Function GetWindowRect Lib "user32" (ByVal hwnd _As lungo, lpRect Come RECT) As Long

WinProc2 Function (ByVal LMSG As Long, ByVal wParam As Long, _ByVal lParam As Long) As Long

Dim rectForm Come RECT, rectMsg Come RECT

Dim x As Long, y As Long

'On HCBT_ACTIVATE, mostrare al MsgBox centrato sul Form1

If lMsg = HCBT_ACTIVATE Then

'Ottenere le coordinate del modulo e la finestra di messaggio

'Per determinare il centro della posizione modulo

GetWindowRect Form1.hwnd, rectForm

GetWindowRect wParam, rectMsg

x = (rectForm.Left + (rectForm.Right - rectForm.Left) / 2) - _

((RectMsg.Right - rectMsg.Left) / 2)

y = (rectForm.Top + (rectForm.Bottom - rectForm.Top) / 2) - _

((RectMsg.Bottom - rectMsg.Top) / 2)

'Posizionare il msgbox

SetWindowPos wParam, 0, x, y, 0, 0, _

SWP_NOSIZE O SWP_NOZORDER O SWP_NOACTIVATE

End Function

Private Sub Command2_Click ()

Dim hInst As Long

Discussione Dim As Long

'Visualizzare la finestra di messaggio

'MsgBox "Questa finestra di messaggio è posizionato a (0,0)."

End Sub

4 Premere il tasto "F5" per eseguire il programma.

5 Fare clic sul pulsante "Command2" sul modulo per visualizzare il messaggio al centro della forma. Fai clic su "OK" per chiudere la finestra di messaggio.