|
Type OPENFILENAME
lStructSize As Long hwndOwner As Long hInstance As Long lpstrFilter As String lpstrCustomFilter As String nMaxCustFilter As Long nFilterIndex As Long lpstrFile As String nMaxFile As Long lpstrFileTitle As String nMaxFileTitle As Long lpstrInitialDir As String lpstrTitle As String flags As Long nFileOffset As Integer nFileExtension As Integer lpstrDefExt As String lCustData As Long lpfnHook As Long lpTemplateName As String End Type 'In una procedura dove sara' necessario aprire un file 'invece imposteremo la struttura nel modo adeguato e 'richiameremo la funzione GetOpenFileName: Dim ofname As OPENFILENAME Dim Ret as Long With ofname .lStructSize = Len(ofname) .hwndOwner = Screen.ActiveForm.hwnd .lpstrFilter = "Tutti i file" & vbNullChar _ & "*.*" & "File di testo" & vbNullChar & "*.txt" _ & vbNullChar .nFilterIndex = 2 .lpstrDefExt = "txt" .Flags = cdlOFNFileMustExist Or cdlOFNPathMustExist .lpstrTitle = "Apertura file di testo" .nMaxFile = 356 .lpstrFile = Space$(255) .lpstrInitialDir = "" End With Ret = GetOpenFileName(ofname) 'La funzione restituisce zero se l'utente preme il pulsante 'Cancel. Il nome del file da aprire viene restituito 'nell'elemento lpstrFile , sotto forma di stringa 'null-reminated, se sono stati selezionati piu' file ogni 'nome di file viene separato dal carattere nullo e la fine 'della stringa viene segnalata da un doppio carattere nullo 'L'elemento nFilterIndex viene modificato dalla funzione 'API per rispecchiare il filtro selezionato dall'utente. 'Per mostrare una common dialog File Save si dovranno 'eseguire gli stessi passaggi ma richiamando la funzione 'GetSaveFileName. |