Newsgroup: it.comp.lang.visual-basic
Titolo: [?] [MDI] Menu' del parent e dei children

Che figo che sono :) Pure il plurale giusto nel subject... :)
Ok, scherzi a parte ho questo problema. Applicazione MDI, un padre e
tanti figli, almeno di 3 tipi diversi.
Si tratta praticamente di un'applicazione per la creazione di libretti
uso e manutenzione che li gestisce in modo relativamente furbo.
Praticamente i figli li uso per creare:
- paragrafi del libretto
- libretto assemblato.
Ogni paragrafo e' composto da un testo, una tabella e un'immagine, e
quindi ho, come figli:
- creazione di testi
- creazione di tabelle
- creazione di libretti assemblati.
Tutto funziona bene --mi sembra--, ma sto impazzendo coi menu' e le
toolbar, tanto che le toolbar le ho tirate via tutte e ho creato 2.000
cmdButton piccoli e in style graphic.
Dunque, il discorso e' questo: quando lancio l'applicazione, vedo il
form padre, la sua toolbar --l'unica sopravvissuta allo sterminio-- e
i suoi menu'. Ad esempio, ho il menu' File/Nuovo, che mi fa comparire
un piccolo form dove seleziono quale tipo di documento creare.
Nel momento in cui creo un documento, compare un form MDIChild del
tipo appropriato e io ci lavoro sopra. Da quel momento, pero',
anziche' vedere i menu' del padre vedo quelli del figlio appena
creato. Nel menu' del figlio, ovviamente --o ingenuamente?-- non ho
messo File/Nuovo, perche' quello e' un menu' piu' ragionevolmente
relativo al padre che a un figlio... Quindi il mio "vecchio"
File/Nuovo lo perdo. Se premo il pulsante "nuovo" della toolbar, sono
in grado di creare un altro figlio, magari di tipo diverso. Come lo
faccio, ovviamente, al menu' del precedente figlio si sostituisce
quello del nuovo figlio.
Ecco, quello che io vorrei fare, e' un "merge" dei menu': non e'
possibile che per avere sempre File/Nuovo io debba mettere nei menu'
di tutti i tipi di form --che saranno 7 alla fine-- la voce
File/Nuovo...
Guardando nell'help, mi era parso di capire che usando Negotiate
Position nei menu' e nelle proprieta' dei form si dovesse risolvere
questo problema, ma dalle prove che ho fatto non sono arrivato a nulla
di buono.
Mi sapete dare una mano?
Grazie, come sempre, in anticipo.
Saluti.
-- 
      Gianni "bugbarbeq" Rondinini, 25, RA, 242, 152
  VBR - Vero Birro Romagnolo®, diffidate dalle imitazioni!
 Opel/ECC Calibrezio EVO-IV --- Kawasaki "Gas Gas" ZZ-R 1100
 ICQ# 36893168 - IRCNet: bugbarbeq, @ on #linux-it & #NetBSD

quello del nuovo figlio.
Di solito il menù lo si lascia solo nel parent, poiché i figli non sono altro che i documenti.
Quindi, perché non modificare le voci del menù del parent a seconda del tipo di documento attivo? In
questo modo hai solo un menù e l'utente non si confonde... "Ma dov'era quella voce, nel menù di
sotto o in quelo di sopra?" ;)
Ciao,
Moreno
#sirri#@#morenosoft#.com
(togliete "#" dall'indirizzo)
Moreno Sirri VB Site - 
http://www.morenosoft.com/MSVBSite/
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

sotto o in quelo di sopra?" ;)
Figa... non ci avevo pensato... Solo che cosi' divento vecchio a
spostare tutto quanto... Beh, beh: apriro' il mio PETextEditor
--significato di PE solo via email =)-- e poi modifichero' tutti i
files... Uffa che barba...
Naturalmente, il modo piu' veloce per capire qual e' il figlio attivo
al momento del click sul menu' e' usare frmMain.activeform --o
qualcosa del genere: non ho vs aperto ora--, giusto?
Per fortuna che i vari mnu*_Click chiamavano procedure dentro
mdlCore.bas e non erano codificate nei form... :)


mdlCore.bas e non erano codificate nei form... :)
In alternativa puoi usare n menù e viualizzare solo quello che ti tinteressa, ma dal punto di vista
ingegneristico è meglio, secondo me, usare un unico menù e nascondere le voci...
"punto di vista ingegneristico"??? Che cacchio vuol dire? Mah.... :-)
