Differenze tra le versioni di "Spostare o ridimensionare una finestra di un MessageBox"

Da Gambas-it.org - Wikipedia.
 
(Una versione intermedia di uno stesso utente non è mostrata)
Riga 1: Riga 1:
Solitamente la finestra del ''MessageBox'' si mostra centrata rispetto alla scrivania.
+
#REDIRECT [[Spostare_la_finestra_di_un_MessageBox]]
<BR>E' possibile decidere in quale punto della Scrivania far apparire la finestra del ''MessageBox'', impostando le sue coordinate.
 
<BR>Per fare ciò, bisognerà individuare il numero identificativo della sua finestra attraverso la Proprietà ".ActiveWindow" della Classe statica ''Desktop'', e successivamente utilizzare il Metodo ".Move()" della Classe "DesktopWindow".
 
<BR>A tal fine è necessario che il ''MessageBox'' abbia un titolo della propria finestra (e ciò si imposterà con la Proprietà ".Title"), e che siano attivati anche i Componenti "gb.desktop" e "gb.desktop.x11".
 
 
 
Mostriamo un esempio pratico:
 
Private Timer1 As Timer
 
 
 
'''Public''' Sub Button1_Click()>
 
 
  With Timer1 = New Timer As "Timer1"
 
    .Delay = 100
 
    .Start
 
  End With
 
 
  With Message
 
    .Title = "Titolo del MessageBox"
 
    .Info("Testo qualsiasi")
 
  End With
 
 
'''End'''
 
 
'''Public''' Sub Timer1_Timer()
 
 
<FONT Color=gray>' ''Il "Timer" consente di verificare l'attuale finestra "attiva" e posta al di sopra delle altre.''
 
' ''Quando sarà stato aperto il "MessageBox", il Metodo "Desktop.ActiveWindow" ne individuerà la finestra e quindi il suo ID:''</font>
 
  Dim dw As DesktopWindow
 
 
  With dw = New DesktopWindow(Desktop.ActiveWindow)
 
<FONT Color=gray>' ''Evita che il successivo Metodo ".Move()" venga applicato anche alle altre finestre:''</font>
 
    If .VisibleName <> "Titolo del MessageBox" Then Return
 
<FONT Color=gray>' ''Applica dunque il Metodo ".Move()" alla sola finestra del "MessageBox":''</font>
 
    <FONT Color=#B22222>.Move</font>(Screen.AvailableWidth * 0.8, Screen.AvailableHeight * 0.2)
 
    Timer1.Stop
 
  End With
 
 
'''End'''
 

Versione attuale delle 20:41, 29 dic 2021