Newsgroup: it.comp.appl.access
Titolo: richiamare le immagini incorporate di Access da vba

buongiorno a tutti, 
 
mi spiego, ho un pulsante a cui ho messo l'icona di quelle disponibili in Access
dal nome "Matita (Modifica)" vorrei che su click assumesse l'icona del dischetto di nome "salva" 
 
è possibile richiamare queste icone da vba?
 
grazie a tutti.


metti un secondo pulsante NASCOSTO con il simbolo del dischetto. 
chiamalo cmdNascosto
 
per cambiare l'immagine di cmd1:
 
Me.cmd1.PictureData = Me.cmdNascosto.PictureData
 
sicuramente da qualche parte access le ha salvate e probabilmente esiste 
un metodo più pulito
 
BFS


Ho provato a cercare l'elenco di queste bitmap per richiamarle ma senza successo.
La tua è una soluzione grazie
 
 


Un grazie doveroso a ChatGPT!!
 
la sua risposta:
In Access, le bitmap predefinite, o PictureData integrate, sono accessibili tramite la raccolta Access.PictureData. Puoi utilizzare un ciclo per accedere a tutte le bitmap predefinite disponibili. Di seguito è riportato un esempio di come puoi elencare i nomi di tutte le PictureData integrate:
 
Private Sub ListDefaultPictures()
    Dim pd As Access.PictureData
    For Each pd In Access.PictureData
        Debug.Print pd.Name
    Next pd
End Sub
 
Questo codice esegue un ciclo su ogni elemento nella raccolta Access.PictureData e stampa il nome di ogni PictureData tramite Debug.Print. Puoi eseguire questa procedura in un modulo VBA o in un evento appropriato come Form_Load per visualizzare i nomi delle PictureData integrate nella finestra di output di Access.
 
Alcuni esempi di nomi di PictureData predefinite comuni in Access includono:
AccessMascot
AlertCaution
AlertInfo
AlertWarning
ArrowDown
ArrowLeft
ArrowRight
ArrowUp
Blank
Calculator
Camera
CheckMark
Clock
Database
Document
Envelope
Error
Exit
FolderClosed
FolderOpen
Help
Home
Hourglass
Information
Key
Magnifier
Printer
Question
Refresh
Save
Search
Star
Stop
Tools
TrashCan
User
 

 Un grazie doveroso a ChatGPT!!
 
 
e funziona quel codice?
quindi come assegni l'immagine a un pulsante via vba?
 
BFS


Confermo che quel codice non funziona, ho riprovato a riformulare la domanda e mi ha risposto come segue:
 
Per assegnare un'icona predefinita a un pulsante, puoi utilizzare l'oggetto StdPicture e le costanti predefinite di Access per le immagini. Ecco un esempio corretto:
 
Private Sub Form_Load()
    ' Assegna un'icona predefinita a un pulsante di comando
    Me.Comando0.Picture = Application.CurrentProject.AccessObjectDependencies.Item("StdPictures").Prefix & "18"
End Sub
 
ma anche in questo caso mi ha dato il seguente errore 
"proprietà o metodo non sopportati dall'oggetto"
 
infine chatGPT mi ha risposto:
 
Mi scuso per l'errore nella risposta precedente. La mia affermazione era errata e non esiste un modo diretto per assegnare le icone predefinite di Access ai pulsanti utilizzando VBA.
 
Tuttavia, puoi utilizzare icone personalizzate o immagini esterne come immagini per i pulsanti. Puoi specificare il percorso dell'immagine desiderata utilizzando la proprietà Picture dell'oggetto CommandButton. Ad esempio:
 
Private Sub Form_Load()
    ' Assegna un'icona personalizzata a un pulsante di comando
    Me.Comando0.Picture = "C:\Percorso\immagine.ico"
End Sub
 
Purtroppo, non c'è un modo diretto per accedere alle icone predefinite di Access tramite VBA. Dovrai utilizzare icone personalizzate o immagini esterne come alternativa.
 
 
 


appunto
te l'ho scritto perchè per vba access chatgpt molto spesso usa la logica 
di 
vb.net
 sparando codice senza senso e non funzionante
 
mentre per altri linguaggi nel mio caso flutter/python il codice è 
incredibilmente preciso
 
BFS


ok.


Gia' e' sembrato anche a me che fosse 'tendente' all'ambiente dot net il 
codice che propone, magari da piccolo ha studiato prima quello e quindi 
se lo ricorda meglio e si sente piu' sicuro quando risponde
 
Sull' "incredibilmente preciso"  a mia esperienza mica tanto, in 
compenso gli hanno insegnato a scusarsi cortesemente
 
Tutto sommato, e visto che un buon grado di capacita' di consigliare 
varia su qualsiasi argomento, direi che e' uno strumento a dir poco 
eccezziunalo veramente
Credo sarebbe molto interessante capire esattamente cosa ci sta dietro 
ad uno strumento come chatGpt

tempo fa ho trovato questo codice
non ricordo il sito e/o l'autore, penso ti possa essere utile
 
https://www.shadoware.it/a/ImageMSO2PicData.accdb