Esiste un modo per ottenere l'accesso ms per visualizzare immagini da file esterni
Domanda
Ho un'app MS-Access (1/10 MS-Access, 9/10 MS-SQL) che deve visualizzare le fotografie di alcune risorse insieme alle relative specifiche.Attualmente le immagini vengono archiviate in una tabella MS-Access come oggetto OLE (e copiate e incollate nel campo dagli utenti).
Per vari motivi, vorrei semplicemente archiviare i file .jpg originali in una cartella sull'unità di rete e farvi riferimento dalla parte dell'applicazione.Ho preso in considerazione l'idea di passare al tipo di dati immagine di MS-SQL (e al suo sostituto varbinary), ma penso che la mia popolazione di utenti coglierà più facilmente il concetto di cartella di rete.
Come posso fare in modo che MS Access visualizzi il contenuto di un file .jpg?
Soluzione
Un'altra opzione è inserire un controllo immagine nel modulo.Esiste una proprietà di quel controllo (Immagine) che è semplicemente il percorso dell'immagine.Ecco un breve esempio in VBA di come potresti usarlo.
txtPhoto sarebbe una casella di testo legata al campo del database con il percorso dell'immagine imgpicture è il controllo dell'immagine L'esempio è un evento di clic per un pulsante che avanzerebbe al record successivo.
Private Sub cmdNextClick()
DoCmd.GoToRecord , , acNext
txtPhoto.SetFocus
imgPicture.Picture = txtPhoto.Text
Exit Sub
End Sub
Altri suggerimenti
Hai dato un'occhiata alle soluzioni di Stephen Lebans?Eccone uno:
Modulo di classe immagine per l'accesso
Controlla l'elenco di altri ottimi codici sul lato sinistro di quella pagina web.Potresti trovare qualcosa che corrisponde pienamente a ciò di cui hai bisogno.
Ho scoperto che questo articolo di Microsoft con VBA completo ha funzionato molto bene per me.
Il modo più semplice è probabilmente quello di inserire un Internet Explorer in uno dei tuoi moduli.Dai un'occhiata a questo sito: http://www.acky.net/tutorials/vb/wbrowser/
Poiché puoi fare riferimento a quell'oggetto in Access, dovrai solo puntare il controllo del browser web sul percorso del file .jpg (NavigateTo() se ricordo bene).
MODIFICARE: Il collegamento sopra è stato appena cercato su Google e selezionato dai risultati (il primo che si è aperto rapidamente).Non penso che sia un ottimo tutorial, contiene solo tutte le indicazioni di cui hai bisogno...Controlla msdn ecc.se hai bisogno di maggiori informazioni!
Puoi provare un controllo ActiveX chiamato AccediImmagina, rende più comoda l'aggiunta di immagini al database: è possibile caricarle da file, scansionarle, incollarle dal buffer o trascinarle.Puoi ritagliare l'immagine direttamente nel database e ricampionarla automaticamente.Gestisce automaticamente l'archiviazione di immagini esterne se ne hai bisogno.
Tieni presente che in Access 2010 (e versioni successive) questa operazione è semplicissima perché il controllo Immagine può essere associato a un campo nella tabella che contiene il sentiero nel file immagine (.jpg, .png, ...).Non è richiesto VBA.
Per maggiori dettagli vedi la mia altra risposta Qui.