Newsgroup: it.comp.appl.access
Titolo: aggiornare un oggetto non associato in una maschera

Ciao a tutti!
ho un problema con una maschera del mio database.
La maschera in questione è composta in precedenza  da una serie di
caselle di testo e da un'immagine. Le caselle di testo e l'immagine
visualizzano le informazioni contenute in una tabella e volta per volta
facendo scorrere la rotella del mouse posso vedere nella maschera un
record alla volta, aggiornando le info delle caselle di testo e
l'immagine.
Per l'immagine ho creato una macro su "evento corrente" della maschera
con questo codice:
------------------------------------------------
Private Sub Form_Current()
Dim path As String
Dim file1 As String
On Error Resume Next
path = Application.CurrentProject.path
file1 = path & Me![nomegrafico]
Me![Immagine1].Picture = file1
End Sub
-------------------------------------------------
"nomegrafico" è la casella di testo in cui era memorizzato l'indirizzo
e il nome del file immagine.
tutto ok fin qui.
Il problema nasce dal momento in cui non voglio più visualizzare una
immagine (jpg, png etc...) ma direttamente un file .pdf.
Invece di inserire nella maschera l'immagine ho provato con oggetto di
tipo Adobe Acrobat Document (sia Crea nuovo oggetto che crea da file).
Il problema è come fare in modo che l'oggetto venga aggiornato come
veniva aggiornata l'immagine!
io ho provato con la stessa impostazione di prima cambiando la riga di
codice
------------------------------------------------
Me![Immagine1].Picture = file1
------------------------------------------------
con
----------------------------------------------------------
Me![NonAssociatoOLE1].Object = file1
----------------------------------------------------------
ma la maschera non si aggiorna e rimane fissa sul file pdf inserito in
fase di impostazione.
cosa sto sbagliando? e' giusto  mettere [ ...].Object così come usavo
[...].Picture?
Grazie 1000 per l'aiuto!
F

 F
devi usare loadfile
-- 
_ _
Ciao
MAssimiliano Amendola            
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:  
www.donkarl.com/it


Ciao Massimiliano!
grazie per la risposta, anche se ho provato ma non ho combinato un
granchè. Loadfile a cosa lo devo associare?
Ho risolto per ora sostituendo la riga dell'immagine con
Me![AssociatoOLE50].OLETypeAllowed = acOLELinked
Me![AssociatoOLE50].SourceDoc = file1
Me![AssociatoOLE50].Action = acOLECreateLink
ora nell'oggetto associato 50 della maschera si riesce a vedere il file
pdf e viene aggiornato con il record in uso.
Se puoi ti prego di spiegarmi meglio la tua soluzione che probabilmente
è migliore!
Poi, continuando a sviluppare il mio database sto creando una maschera
al cui interno vorrei avere un controllo active x per un file video
(.wmv) che si aggiorni come si aggiorna il record corrente, alla stessa
maniera del file pdf di prima.
Ho provato con:
Me![WindowsMediaPlayer5].OLETypeAllowed = acOLELinked
Me![WindowsMediaPlayer5].SourceDoc = file1
Me![WindowsMediaPlayer5].Action = acOLECreateLink
dove file1 è il path al file wmv corrente e WindowsMediaPlayer5
dovrebbe essere il nome del controllo active x...
che cosa sto sbagliando?
soluzioni migliori e più eleganti?
grazie 1000  come sempre!
F

 F


 A quel punto ti basta un me.tuoocx.loadfile = tuopath
grazie ancora per la risposta!
allora, io sto usando oggetti OLE... ho pure installato Acrobat Reader
7, come faccio ad usare le ocx?
come le importo nella maschera?
e per i video? anche lì ci sono altrenative più allettanti?
grazie!!!
F

 A quel punto ti basta un me.tuoocx.loadfile = tuopath
eccomi ancora qui!
sto facendo confusione...questi ocx sono i controlli Active X?
se sì, allora ho provato ad inserire sia quello per il file acrobat
che quello per il filmato wmv...
ora, per dire al controllo Active x quale file aprire cosa mi conviene
fare?
Vado sulle proprietà della maschera e su aggiorna (o su open) e creo
una piccola macro tipo questa:
-------------------------------------------
Private Sub Form_Open(Cancel As Integer)
Dim path As String
Dim file1 As String
On Error Resume Next
path = Application.CurrentProject.path
file1 = path & Me![Filmato]
Me![WindowsMediaPlayer5].loadfile = file1
End Sub
-------------------------------------------------------------
così non apre niente però...è giusto mettere:
Me![WindowsMediaPlayer5].loadfile = file1 ?
e poi, devo mettere WindowsMediaPlayer5 o WMPlayer.OCX.7? il primo è
il nome del controllo il secondo quello della classe...
riusiresti per favore a darmi una dritta per usare questi controlli
Active X?
Sempre e cominque: grazie 100000000!
F

 F
-- 



cosa intendi per finestra immediata? intendi la msgbox con file1 in
modo da controllare che il path sia giusto?
e lo slash finale? dici che deve essere una cosa tipo:
C:\cartella\file.wmv\ ?
quando importo immagini e file pdf non metto mai lo slash finale e
funziona...
non capisco...
grazie!
F

 F
No il current


 --
??
comunque è la storiia degli OCX o Active X che non riesco a far
funzionare...
non riesco a trovare un semplice esempio di codice che mi permetta di
caricare dentro un Active X (che sia pdf o WMPlayer) un file
memorizzato in un particolare path...il codice che ho provato l'ho
postato prima...
hai qualche idea?
grazie per l'aiuto!
F

 F
Guarda l'esempio che ho appena messo su accessgroup


 --
ciao!
sono onorato ad aver avuto un intervento quasi "ad personam" sul tuo
sito, grazie per l'aiuto!
ho scaricato il file e l'ho aperto con il mio access 2003.
purtroppo mi ha dato questo errore:
"nel database o nel progetto di MS Office Access manca un riferimento,
o è presente un riferimento non più valido al file 'OWC10.DLL'
versione 1.1"
se continuo, nella maschera non visualizza nessun pdf...
che succede?
F


come non detto, il file (aggiunto) viene correttamente visualizzato
nella maschera...
adesso vedo un pò se riesco a lavorarci su...
il messaggio di errore di prima però cosa può voler dire?
grazie!
F


Sull amia macchian ho installato la versione developer
basta togliere il riferimento
Grazie della segnalazione provvedo a correggere l'upload


ho provato ad usare lo stesso codice che hai usato per il file pdf (e
che funziona anche da me) per aprire un filmato wmv.
ho una maschera con inserito un active x del media player e sulla
maschera ho riportato la macro:
------------------------------------------
Private Sub Form_Current()
    If IsNull(Me.Filmato) Then
        Me.WindowsMediaPlayer5.Visible = False
    Else
        If Dir(Me.Filmato) <> "" Then
            Me.WindowsMediaPlayer5.Visible = True
            Me.WindowsMediaPlayer5.LoadFile Me.Filmato
            Else
            Me.WindowsMediaPlayer5.Visible = False
        End If
    End If
End Sub
--------------------------------------------
dove  WindowsMediaPlayer5 è l'oggetto active x e Filmato è la casella
di testo contenente l'indirizzo esatto (C:\cartella\file.wmv) del file.
Con questo codice dà errore:
Errore di runtime 438
Proprietà o metodo non supportati dall'oggetto
e si blocca il debug (evidenzia in giallo) la linea con il LoadFile.
Cosa sto sbagliando? dov'è possibile trovare la sintassi del comando
LoadFile?
Grazie!
F