View Full Version : BCB: beato chi ha inventato i componenti
ma se non li hai, devi scrivere quintalate di codice......
Il codice sotto permette di visializzare in un "TImage component" il contenuto di una cartella non visualizzandone il nome del file ma rappresentando la sue icone.
E' il medesimo effetto che si ottiene in ambiente windows quando si apre una cartella; in essa vengono mostrati i file sotto forma di icona e per essa viene usata la stessa definita nell'ambiente windows.
Il problema è che usare il codice sotto non è poi così immediato; mi chiedevo quindi se già qualcuno lo avesse mai usato con BCB, magari potrebbe risparmiarmi di scrivere ulteriore codice.
Spero di essere stato chiaro
grazie
SHFILEINFO info;
DWORD ImageHandle = SHGetFileInfo("",
0,
&info,
sizeof(info),
SHGFI_DISPLAYNAME |
SHGFI_ICON |
SHGFI_SHELLICONSIZE |
SHGFI_SYSICONINDEX);
if (ImageHandle != 0)
{
ImageList1->Handle = ImageHandle;
ImageList1->ShareImages = true;
}
if(ImageList1->Count > 0)
{
for(int i=0;i<ImageList1->Count;i++)
{
ImageList1->GetIcon(i,Image1->Picture->Icon);
}
}
scusate; questo è un esempio dell'interfaccia che desidererei costruire
http://www.clipcode.net/content/shell_guide/06_ui_files/image006.gif
Ti posso dire che con le API è abbastanza facile e il codice non è molto.
Ma con il bcb non ti posso aiutare perchè ho il dvd rotto.
Ma lo hai usato lo script che ti ho fatto per visualizzare il file pdf in locale via html?
Originariamente inviato da verloc
[B]Ti posso dire che con le API è abbastanza facile e il codice non è molto.
se ti capita un esempio il più stringato possibile grazie
Originariamente inviato da verloc
[b]Ma lo hai usato lo script che ti ho fatto per visualizzare il file pdf in locale via html?
ti ho risposto nell'altro 3d
Ciao
No MisterX meglio lasciare perdere le API incasineremmo solo le cose.Ma non ho capito quale è il tuo problema sinceramente.
Sei sicuro di non poter fare quello che ti serve con il controllo(componente) list-view in report-style?
A giudicare dall'interfaccia che vuoi,devi proprio usare il list view(In report style)a destra e il tree view a sinistra.I componenti standard ci sono.Sono i componenti più difficili da usare e non dirlo a me che ci ho messo 15 giorni proprio per far funzionare il list view(il report style è il più difficoltoso) in win32 API.
Devi prima creare il comp List
poi la lista di immagini(icone)
poi le colonne
e poi inserire gli items.
Good luck ;)
grazie verloc
sono molto cocciuto; so che prima o poi lo becco il sistema: ho attraverso un componente già testato e bello e pronto o attraverso qualche codice molto compatto trovato in rete; sono sulla strada giusta:)
Del resto, anche per l'apertura della famosa finestrella che ti permette di selezionare una cartella di destinazione, quella di default usata da windows, ho trovato svariato codice.
Ho trovato differenti esempi e molto diversi tra loro: ad esempio, uno per aprire la benedetta window usava chilometri di codice, un altro con dieci righe permetteva la medesima soluzione.
Ciao
Mi sorge il sospetto che tu non abbia la reference delle API (Gravissimo :D)
La shfileinfo infatti è una struttura da riempire.
Per usarla eventualmente:
#include <shlobj.h>
#include <shlwapi.h>
e forse ti serve anche
#include <windows.h>
Ma la documentazione LA DEVI AVERE anche se usi il CB.
Per il resto e evidente dal pezzettino che devi usare il Listview.
Morale:
Se pretendi di usare solo il CB senza conoscre le API;lontano non vai.
Cia Cia ;)
spiegamele tu allora, son tutt'occhi;)
beh, ho usato qualcosina;)
guarda qua poi:
http://www.apogeonline.com/libri/00460/00460.gif
Intendevo la reference
ftp://ftp.borland.com/pub/bcppbuilder/techpubs/bcb5/b5ms.zip
sono una ventina di MB ;)
troppi per i miei gusti, viaggio a 56 k;)
se intedi le fuzioni stile ShellExeute() etc.... non sono complesse
troppi per i miei gusti, viaggio a 56 k;)
se intedi le fuzioni stile ShellExeute() etc.... non sono complesse: cmq, se hai una lista in ASCII: grazie;)
Guarda che ne vale la pena(se vuoi capire come funziona windows).
Non fare il pigrone.
Io ci ho messo 1h .15'
Fallo la domenica al mattino presto.
scusa, ti spiego:
non è per una questione di pigrizia, dell'ambiente widows ho usato centinaia di funzioni, anche quelle che mi permettono di inviare qualcosa via ftp etc.....
ho solo un grande difetto; quello di essere poco raffinato nella programmazione, in definitiva non mi resta in mente quale tecnologia API che sia ho utilizzato per ottenere il mio programma.
Miro piuttosto al risultato finale indipendentemente da ciò che ho usato.....
Per dirti a che livello sono, ho scritto diversi programmi di gestione PC->CN(controlo numerico)....
Magari le API di windows le uso da sempre e senza saperlo; non ti prendo in giro, non sarebbe da me, ma è la verità;)
Se nelle API di windows sono contemplate anche l'apertura ed uso delle finestre di dialogo di default di windws, bene, le uso da tempo.
Ciao
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.