Connessione al database con Visual Basic NET? Lo trovi su Opentraining.it Visual Basic Italia
Guide e Tutorials:indexed
LA FUNZIONE FINDWINDOW (Articolo completo)

Attraverso l'API FindWindow si va ad individuare una delle finestre di Windows aperte al momento della chiamata.
La ricerca viene eseguita attraverso la corrispondenza del nome della finestra o del nome della classe di finestre (o Window Class) di appartenenza.
Una classe di finestre è un'insieme di oggetti che, se creati come membri della stessa classe, hanno in comune una serie di caratteristiche, in special modo relative alla loro apparenza.
La dichiarazione della FindWindow è la seguente:

Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

da cui si deduce la presenza della funzione nel file user32.dll il fatto che ne esista anche la versione Unicode e che necessiti di due parametri, entrambi String, proprio come il valore di ritorno.
Nel caso in cui la FindWindow abbia successo tale valore di ritorno restituisce il riferimento univoco della finestra desiderata.
In caso contrario (cioè errore nell'assegnazione dei parametri oppure non esistenza di alcuna finestra coi requisiti ricercati) il valore di ritorno sarà 0.
I parametri da assegnare alla FindWindow sono i seguenti:

lpClassName E' il nome della classe di appartenenza della finestra. Se si desidera omettere questo parametro è sufficiente passare la stringa nulla vbNullString.
lpWindowName E' il titolo della finestra sulla barra del titolo (Caption). Se si desidera omettere questo parametro è sufficiente passare la stringa nulla vbNullString.

In realtà non è sempre necessario andare ad indicare la classe di appartenenza della funzione. Se si immagina infatti che il parametro lpClassName corrisponda al nome e cognome di una persona e lpWindowName al suo codice fiscale, anche ammettendo che più persone possano condividere lo stesso codice fiscale, sarà improbabile trovarne due o più nello stesso campione di popolazione. Perciò, se si è sicuri dell'unicità della finestra, si può impostare soltanto il parametro lpWindowName ed assegnare a lpClassName una stringa vuota.
Facciamo un esempio: apriamo la cartella Documenti e cerchiamone il riferimento univoco:

Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As _
String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
MsgBox FindWindow(vbNullString, "Documenti")
End Sub

Una finestra di messaggio ci indicherà il riferimento alla finestra chiamata "Documenti". In base a tale riferimento potremo quindi andare a gestire tale finestra ad esempio facendone lampeggiare il titolo, inviando dei segnali come pressione di tasti o del mouse e così via.

Archivio:ndexed
Lezioni Commenta questa lezione Invia la tua guida Avviso per le nuove lezioni
Proponi un argomento

Visual Basic Italia© copyright 2000 - tutti i diritti riservati
E-mail:
vbitalia@libero.it