Gambas-it

Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: ira83 - 31 Agosto 2009, 11:26:48

Titolo: i menu e i form
Inserito da: ira83 - 31 Agosto 2009, 11:26:48
Ciao a tutti

ho un'altro quesito, che forse è più una curiosità...

mettiamo il caso che sto scrivendo un programma bello grosso e necessito di un menu (quello subit dopo la barra blu per intendeci)... una volta "disegnato" procedo con inserire i comandi... ma i comandi poi dovranno portare ad altri form? o ce il sistema di cambiare "il form" in base al comando selezionato?

inoltre, xke devo ricreare il menu in ogni form?  è noiosa la cosa :) eheh

ciao ciao
Titolo: Re: i menu e i form
Inserito da: Ceskho - 31 Agosto 2009, 13:20:31
Se vuoi che il form in cui si trova il menù cambi di volta in volta devi ridisegnartelo tramite codice...capirai che finchè c'è una textbox il problema non è grande ma se hai 10 textbox, 5 combobox, 6 button, etc la cosa diventa un suicidio...tanto conviene creare un nuovo form....
Titolo: Re: i menu e i form
Inserito da: Gaspare - 15 Settembre 2009, 17:12:25
potresti usare dei panel che appaiono e/o scompaiono con la proprietà .visible= true/false (funziona comprendendo anche gli oggetti in esso contenuti).
Titolo: Re: i menu e i form
Inserito da: md9327 - 16 Settembre 2009, 11:41:14
Prova a scaricarti il mio pgDesigner...

In quasi tutte le applicazioni, MDI o SDI, di norma, nella MainForm viene creato un menu generale. Gli eventi associati ad ogni item del menu vengono (sempre di norma) gestite dalla MainForm che, a seconda dei casi, opera determinate funzionalità. Un esempio è quello dell'apertura del box About (classico in tutte le applicazioni), oppure gestire in maniera centralizzata determinate funzionalità, anche legate a Form o Oggetti vari, incluse dell'applicazione.

Detto questo, non è assolutamente necessario creare un menu in ogni form del progetto, a meno di condizioni particolari.
E' ovvio che la gestione degli eventi del menu in modo centralizzato, da un lato permette un maggior controllo del programma e evita duplicazioni, dall'altra rende pià difficoltosa la gestione dell'interazione con altri oggetti. Però, una volta compresa la semplicità della logica, la gestione diventa assai facile.

Oltre a questo, puoi comunque, e sicuramente, utilizzare un menu in diverse Form, e il mio consiglio è ovviamente quello di creare un oggetto Menu personalizzato indipendente, e fuori dalle Form. Questo ti permette di centralizzale eventuali variazioni e/o modifiche, e puoi associarlo a qualsiasi Form in modo molto semplice.