ciao
voglio in una lista l'elenco dei child di un mdi.....
come si fa?
sono riuscito a agiungere in un select un elemento per ohni nuovo child... ma poi non co come controllarli...
ciao
voglio in una lista l'elenco dei child di un mdi.....
come si fa?
sono riuscito a agiungere in un select un elemento per ohni nuovo child... ma poi non co come controllarli...
Pa brire je mbret, pa brire je pasha, pa brire eshte dhe moda...
io uso sempre una collection dove tengo i riferimenti ai child aperti!
quando ne apro uno, aggiungo un item alla collection
quando ne chiudo uno elimino l'item!
...io nella select scrivo il nome... am mi servirebe anche un id nascosto... solo ch non so come si fa...
se mi puoi dare un esempio... (non del tuo lavoro solo un esempio pratico come si fa)
Pa brire je mbret, pa brire je pasha, pa brire eshte dhe moda...
ma, in che senso "lo aggiungi in una SELECT" ???
spiega un po' meglio il problema:
da quello che ho capito io, ti serve sapere che formMDIChild hai aperto e ti serve agire su di essi.. giusto??
o ti serve solo un elenco?
o ti serve sapere che form è attivo?
io come ti ho già detto,
1 creo una collection
2 quando apro un form MDICild aggiungo un riferimento ad esso nella collection
3 quando chiudo un form elemino ilrelativo riferimento nella collection
allora,
1.la lsita dei file aperti
2. la posobilita di farlo diventare activeform una volta che ci clico...
io ho provato solo a agiungere un elemento a un listbox... ma cio non mi permete di fare altro che controllare il nr dei file aperti...
Pa brire je mbret, pa brire je pasha, pa brire eshte dhe moda...
allora, mi sembra di aver capito che il tuo problema è simile a uno che ho già affrontato, hai un form padre e tanti form figli che rappresentano i file aperti, ma sono alla fine lo stesso tipo di form, aperto ogni volta con un file diverso.. giusto??!
se si, puoi prendere spunto da qua sotto, io avevo un form papà che rappresenta un corso, e tanti form figli che rappresentano le unità..
Il form figlio ha una variabile pubblica nella quale è scritto un identificativo unico che lo distingua dagli altri aperti, qui ti ho messo nome ma puoi mettere anche un numero, io ho ipotizzato che una volta che il form figlio si apre, va a leggere la sua vairabile nome, e di conseguenza apre quel file!
Nella sezione generale del form padre:
Questo pezzo va inserito quando il form padre apre i figli..codice:Public unità as New Collection '--> La collection dove mettiamo i riferimenti ai form aperti
codice:Private Sub ApriUnità(filechevoglioaprire as String) Dim newfrmUnità As frmUnità '-->Il form che contiene l'unità, tu avrai quello che apre i file Dim tmpobj As Object '-->Oggetto di comodo '** Qui ciclo la collection in modo che se il file che voglio aprire ' è già aperto, il form corrispondente mi diventa l'activeform ** For Each tmpobj In unità If tmpobj.nome = filechevoglioaprire Then unità.Item(filechevoglioaprire).ZOrder 0 Set tmpobj = Nothing Exit Sub End If Next tmpobj Set tmpobj = Nothing '** se il form non è gia aperto, lo apro ** Set newfrmUnità = New frmUnità newfrmUnità.nome = filechevoglioaprire unità.Add newfrmUnità, filechevoglioaprire unità.filechevoglioaprire.Show End Sub
Nella sezione generale del form figlio:
codice:Public nome as string
Quando un figlio viene chiuso nel suo evento Unload
ovviamente il tutto è da adattare al tuop caso..codice:frmPadre.unità.Remove(Me.nome)
so che la spiegazione sarà stata molto poco chiara.. ma mi sono impegnato!
grazie molto...
piu o meno è questo che cercavo... con un po di modifiche socuramente riusciro a fare quelloc he voglio..
grazie mille
Pa brire je mbret, pa brire je pasha, pa brire eshte dhe moda...
allora ancora io
unità.filechevoglioaprire.Show mi da errore
"object don't suport this propriety or method"
e poi nel unload del figlio:
frmMain.unità.Remove (Me.idija)
"only one mdi form awolled"
Pa brire je mbret, pa brire je pasha, pa brire eshte dhe moda...
Per tutte le form esiste già una collection che contiene tutti i form aperti dall'applicazione, a da dove puoi leggere tutte òle proprietà dei form. Magari nel tag del form ti memorizzi il file aperto, poi in un ciclo del genere trovi se il form per qul file è già aperto
codice:Dim frm As Form For Each frm In Forms if frm.TAG=tuoFile then msgbox "già aperto" end if next from
..per chiudere il figlio?
Pa brire je mbret, pa brire je pasha, pa brire eshte dhe moda...