Il 18/02/2015 11:24,
bari...@gmail.com ha scritto:
> Il giorno martedì 17 febbraio 2015 19:17:16 UTC+1, Alessandro Cara ha scritto:
>>>
>> che ne dici di questo link?
>>
http://www.tek-tips.com/viewthread.cfm?qid=273555
>
> è proprio la pagina che citavo, quella dove ho trovato definito la struttura.
>
>
>> a quanto pare accOfficeGetFileNameInfo non e' una classe ma una
>> struttura (type)
>> E' quello che sta li che hai copiato? Compare il donchisciotte che hai
>> citato. La struttura e' privata perche' ci sono funzioni pubbliche della
>> classe (quella che ti chiede di definire) che la gestiscono. Non devi
>> definirla fuori e soprattutto non e' una classe.
>>
>
> Chiedo scusa. Anni fa, dopo aver letto decinaia e decinaia di pagine su ereditarietà, polimorfismo e incapsulamento nel tentativo di imparare Delphi, decisi:
> - che non ce l'avrei fatta,
> - che gli americani avevano modi raffinati di descrivere l'acqua calda.
> Ora è forse giunto il momento di pentirmi...
>
> Perciò, col capo cosparso di cenere, faccio domande:
Lascia sta che poi sporchi il pavimento ;-)
> Io mi trovo col modulo di una maschera dove ho copiato il codice dell'utente BR1 che citavo, dove dice:
> Dim gfni As accOfficegetFileNameInfo
non ho compreso quale sia questo codice.
Mi pare di capire che il codice a cui fai riferimento non e' quello del
link.
questo pezzo qui e' quello che definisce la struttura
Private Type accOfficegetFileNameInfo
hwndOwner As Long
strAppName As String * 255
strDlgTitle As String * 255
strOpenTitle As String * 255
strFile As String * 4096
strInitialDir As String * 255
strFilter As String * 255
lngFilterIndex As Long
lngView As Long
lngFlags As Long
End Type
se vuoi usarla fuori dalla classe la devi copiare da qualche parte in
modo che sia "visibile" quando la /ridefinisci/
i.e.
Dim gfni As accOfficegetFileNameInfo
quella struttura serve a questa funzione
Private Declare Function accOfficegetFileName Lib "msaccess.exe" Alias
"#56" (gfni As accOfficegetFileNameInfo, ByVal fOpen As Integer) As Long
'Internal function in MS-Access to show the fileopen dialog, with ftp
locations and everything.
la puoi chiamare anche /giuseppe/ ma deve essere un /giuseppe/ di quel
formato.
Entrambe sono di tipo /privato/ cio' significa che la classe ha i metodi
pubblici per variare le proprieta' della struttura e per chiamare la "#56"
cosa ci fa poi l' /utente/ br1 con questo codice?
Perche' ha bisogno di /ridefinirla/ ?
> però ottengo un errore perché quel codice non mi trova il tipo.
> Se ho ben capito, dovrei spiegare al codice come trovarlo e allora dovrei "caricare" le funzioni che lo gestiscono. E qui nasce il mio interesse per quelle istruzioni:
> With New ClsFileChooser
> .setDirectory "D:\Documenti generali"
> ' ... any other things you want to set first ...
> stri = .getFileNameForOpen
> If stri <> "" Then
> SaveNewRecC (stri)
> Me.Requery
> End If
> End With
>