Newsgroup: it.comp.lang.visual-basic
Titolo: Elenco degli ultimi files aperti

Quando si apre un file in un eseguibile in fondo al menù 
si aggiungono gli ultimi tre o quattro file aperti..
Come si può fare questo col Vb6?
Grazie in anticipo a chi mi risponderà
Saluti
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Saluti
p.e. usando il registro.
tempo fa avevo trovato del codice e l'avevo riadattato.
in "e", nella sezione sunday sw.
hth, j.
--
www.sundaysw.com

> p.e. usando il registro.
Sicuramente č una buona idea.
Potresti leggere le tue keys negli eventi Form_Initialize o Form_Load e
visualizzarle tramite un  menu control array.
Per creare un menu control array, č sufficiente creare un menu item con il
menu editor, specificando un indice (per es. 0 per il primo elemento).
A runtime puoi utilizzare la funzione Load per caricare nuovi elementi del
control array.
Es:
Private Sub Form_Initialize()
    ' Carico altri due menu items
    Load mnuArray(1)
    Load mnuArray(2)
    ' Li valorizzo
    mnuArray(0).Caption = "Primo elemento" ' Creato con il menu editor
    mnuArray(1).Caption = "Secondo elemento"
    mnuArray(2).Caption = "Terzo elemento"
End Sub
--
Lorenzo Benaglia
UGIdotNET - 
http://www.ugidotnet.org

 Per creare un menu control array, è sufficiente creare un menu item con il


 questo modo:
(2) Di solito diffido dalle funzioni della shell: spesso richiedono IE
installato, e spesso in una determinata versione.
In particolare la PathCompactPath richiede Shlwapi.dll ver. 4.71 o
superiore, cioè richiede IE ver. 4.0 o superiore (con una nota di warning
chilometrica che trovi su MSDN).
Il fatto che ormai (quasi) tutti hanno IE6 non è una buona scusa: ipotizzare
l'ambiente finale è piuttosto rischioso e indice di superficialità.
Se io ad. es. uso NetScape IE non so neanche cosa sia e il tuo prog non mi
funzionerà (non è che non metterà i "..."! Mi uscirà con un bel "Punto di
ingresso della funzione non trovato")
Ciao

    Load mnuArray(1)
Tremendo!
MAI, sottolineo MAI, accedere a controlli in eventi Initialize
e Terminate.
A meno che non si abbia tempo da perdere per capire che cosa non
funziona nei nostri programmi ;-)
-- 
ciao, hal


:)
ciao
ugo

 ingresso della funzione non trovato")
Infatti!
Anche se non è del tutto vero...
Si può sempre trovare la maniera di evitare questo problema...
Ad esempio incapsulando la funzione in una DLL ed effettuare opportuni
controlli prima di richiamarla.
Al di la' di queste disquisizioni il problema però rimane...
Ho cercato possibili soluzioni alternative è ho trovato un tip di Steve
McMahon su
http://www.vbaccelerator.com/tips/vba0032.htm
In cui usa due diverse tecniche:
1) Una implementazione della "PathCompactPath" più pulita di quella
precedente perchè non ricorre ad una TextBox nascosta.
2) Ricorre all'utilizzo dell'API "DrawText" (su cui non ho avuto però il
tempo di documentarmi)  :-(
Se per qualsiasi motivo non dovesse andare bene la soluzione con l'API
"DrawText" non rimane che costruirsi una funzioncina in VB.
Quest'ultima soluzione è di semplice implementazione se decidiamo di
stabilire la larghezza massima del testo tramite un numero massimo di
caratteri, ma diventa difficile se decidiamo di stabilire la larghezza
massima in pixel (o in twips o altro..), dato che ci servirebbe sapere le
caratteristiche dei font di sistema per calcolarci la larghezza del testo da
impostare nei menù, ma la cosa si complicherebbe non poco...
Per chi comunque si volesse cimentare ecco un tip per ricavarsi i font di
sistema:
http://www.vbaccelerator.com/tips/vba0034.htm
Ora Evaristo non hai che l'imbarazzo della scelta... :-)
Ciao