Newsgroup: it.comp.appl.access
Titolo: caricare icona esterna in barra strumenti

Buon 2 giugno a tutti.
Faccio la mia solita domanda da niubbo.
Posso inserire una icona esterna (presa da un pacchetto icone o da una .ico) 
in un pulsante personalizzato?
O meglio (se si puo) posso caricarne delle nuove al posto di quelle 25 o 36 
icone che access mi rende disponibili?
onestamente è una scocciatura disegnarle visto che ne esistono in giro delle 
bellissime.
IvanDaBologna 

 IvanDaBologna
-- 
Roberto
-----------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
-----------------------------------------------

 ha scritto nel messaggio 
news:Ww_fg.22137$cX1.3...@twister2.libero.it...

grazie per lo spunto.... ma forse non mi sono spiegato benissimo.
Io vorrei farlo in un pulsante di una barra di comando, dove non è possibile 
scegliere una immagine diversa da quelle predefinite di Access (credo..).
Ivan

 Ivan
Dai un'occhiata a questo:
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=121
@Alex

 ha scritto nel messaggio 
news:1149275481.1...@c74g2000cwc.googlegroups.com...


http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=121
@Alex
ciao @Alex,
il tuo esempio è ottimo, grz.
Siccome che io sono distante almeno un anno luce dalla tua preparazione, mi 
ci vorrà un pò per determinare se riesco a risolvere o meno il problema 
iniziale: data una icona PIPPO.ICO riesco a farla diventare l'icona di un 
pulsante in un menu PopUp ?  (mah...chissà)
Vedo che esiste la proprietà PictureData, adesso provo a vedere se la riesco 
a prelevare magari assegnando l'icona ad un pulsante di comando nascosto e 
poi copiandola nel pulsante del menu .... ?
grz e a presto
IvanDaBologna 

 IvanDaBologna
Ti suggerivo oltre a quanto detto da Alex questo articolo:
http://support.microsoft.com/kb/209974/EN-US/
In particolare la proprietà .FaceId
--
rgrds
SC
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


grazie sv,
ma si tratta sempre di gestire quelle icone che sono contenute nel pacchetto 
Office.
Nessuna nuova immagine può essere importata o sostituita.
E' vero che nel demo di Alex ne vengono elencate veramente molte ( più di 
mille!), ma alla fine si tratta sempre di immagini già viste. Molte di 
queste sono riconosciute dagli utenti per l'azione che sono solite 
sottendere e quindi ecco l'esigenza: rinfrescare almeno le immagini.
Nelle maschere non c'è problema, posso lavorare interi pulsanti in PhotoShop 
e gestirli al meglio, ma nelle barre degli strumenti ....
comunque non mi arrendo e grazie
IvanDaBologna 

 IvanDaBologna
Qualcosa si può fare... con questo:
http://www.lebans.com/imagecontroltoclipboard.htm
copi l'immagine nella ClipBoard e poi da Personalizza barra strumenti te
la richiami con "Incolla icona pulsante".


 SC
Non credo sia la strada migliore, anzi.... è decisamente assurdo fare
una cosa
del genere RUNTIME, perchè quì stiamo parlando di questo....!
Non ho però approfondito se i metodi sotto riportati possono però
semplificare
l'azione...!
CopyFace
PasteFace
In qualsiasi modo ritengo possa essere usato questo sistema:
Sub ChangeButtonImage()
    Dim picPicture As IPictureDisp
    Dim picMask As IPictureDisp
    Set picPicture = stdole.StdFunctions.LoadPicture( _
        "c:\images\picture.bmp")
    Set picMask = stdole.StdFunctions.LoadPicture( _
        "c:\images\mask.bmp")
    'Reference the first button on the first command bar
    'using a With...End With block.
    With Application.CommandBars.FindControl(msoControlButton)
        'Change the button image.
        .Picture = picButton
        'Use the second image to define the area of the
        'button that should be transparent.
        .Mask = picMask
    End With
End Sub
Nell'esempio seguente vengono recuperate ed esportate in un file
l'immagine e la maschera del primo oggetto CommandBarButton restituito
dal codice. Per utilizzare questo esempio, è necessario specificare un
percorso per i file di esportazione.
Sub GetButtonImageAndMask()
    Dim picPicture As IPictureDisp
    Dim picMask As IPictureDisp
    With Application.CommandBars.FindControl(msoControlButton)
        'Get the button image and mask of the this CommandBarButton
object
        Set picPicture = .Picture
        Set picMask = .Mask
    End With
    'Save the button image and mask in a folder.
    stdole.SavePicture picPicture, "c:\temp\image.bmp"
    stdole.SavePicture picMask, "c:\temp\mask.bmp"
End Sub
Come ovvio che sia solo immagini BMP possono essere passate sia con
questo
metodo che con altri.
Il vantaggio di questo metodo è che possono essere usate le BMP come
StripImage,
vale a dire quelle che si passano a controlli ListView o TreeView
costituite da
immagini multiple con un colore di Sfondo CIANO(spesso), definendo
anche il Mask
color al fine di vederle grige....!
Ovviamente per usare questo sistema servono i riferimenti alle librerie
OFFICE.
Ciao
@Alex

 ha scritto nel messaggio 
news:1149346456.6...@u72g2000cwu.googlegroups.com...



CopyFace
PasteFace










Ciao
@Alex
.... credo che mi ci vorrà la settimana prossima per tentare questa via, che 
pare davvero portare al nuovo mondo!
BMP e basta ? ma questo non è un problema! vista le grandezze delle immagini 
di cui si tratta.
Parlavi delle StripImage, ma come faccio ad impostare un indice per 
posizionarmi (estrarre ) quella scelta ?
Suppongo che senza un indice, sarebbe sempre caricata la prima porzione 
dell'immagine.
In questo caso le cose sarebbero talmente facili che mi metto a 
commercializzare librerie di icone ... ( o forse ci ha già pensato qualcuno 
?!!)
per ora grazie a tutti, spero di postare un mezzo codice funzionante.
IvanDaBologna 

 --
[cut]
grazie sv, credo che esplorerò la strada indicata da Alex nel 3D seguente 
....
Fermo restando che anche questo metodo, 'al volo', funge!
IvanDaBologna 

 IvanDaBologna
Ciao Ivan
@Alex

[cut]
e se vuoi creare Icone carine te le pubblico io sul mio sito...!
;-)
[cut]
lol