Differenze tra le versioni di "Individuare l'ID della finestra di un MessageBox generato da un programma"
Da Gambas-it.org - Wikipedia.
Riga 1: | Riga 1: | ||
− | Per individuare l'ID della finestrina di un ''MessageBox'', generato da un un altro programma, si potrà procedere come appresso. | + | Per individuare l'ID della finestrina di un ''MessageBox'', generato da un un altro programma (diverso dal nostro programma Gambas), si potrà procedere come appresso. |
==con le sole funzioni di Gambas== | ==con le sole funzioni di Gambas== | ||
− | Si potrà utilizzare la classe ''Desktop''. In tal caso bisognerà attivare anche | + | Si potrà utilizzare la classe ''Desktop''. In tal caso bisognerà attivare anche i Componente "gb.desktop" e "gb.desktop.x11". |
+ | <BR>In questo esempio si farà in modo da filtrare le finestre eventualmente aperte, prendendo in considerazione soltanto quella del "MessageBox", purché tale finestra abbia un nome visibile (solitamente sul bordo in alto). | ||
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
− | + | Dim dw As DesktopWindow | |
− | + | For Each dw In Desktop.Windows | |
− | + | If dw.VisibleName = "<FONT color=gray>''nome_visibile_della_finestra_del_MessageBox''</font>" Then Print Hex(dw.Id, 6) | |
− | + | Next | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
'''End''' | '''End''' |
Versione delle 18:30, 26 dic 2021
Per individuare l'ID della finestrina di un MessageBox, generato da un un altro programma (diverso dal nostro programma Gambas), si potrà procedere come appresso.
con le sole funzioni di Gambas
Si potrà utilizzare la classe Desktop. In tal caso bisognerà attivare anche i Componente "gb.desktop" e "gb.desktop.x11".
In questo esempio si farà in modo da filtrare le finestre eventualmente aperte, prendendo in considerazione soltanto quella del "MessageBox", purché tale finestra abbia un nome visibile (solitamente sul bordo in alto).
Public Sub Button1_Click() Dim dw As DesktopWindow For Each dw In Desktop.Windows If dw.VisibleName = "nome_visibile_della_finestra_del_MessageBox" Then Print Hex(dw.Id, 6) Next End