PDA

Visualizza la versione completa : [C++] Progettazione modulare con Windows Forms


albert_insane
23-08-2007, 09:47
ciao a tutti,
vi espongo il mio problema:

devo progettare un'applicazione in visual c++(2005) che permette di supervisionare il funzionamento di pi¨ sistemi.
Per far questo l'approccio pi¨ flessibile Ŕ quello di progettare l'interfaccia di ciascun sottosistema "a se stante", e successivamente un main form molto semplice che consente di scegliere il sottosistema tramite un menu. In base al sottosistema che si sceglie la sua interfaccia deve essere creata e visualizzata nel form principale, poi eventualmente distrutta per essere rimpiazzata con l'interfaccia di un altro sottosistema etc. Lo scopo Ŕ quello di mantenere il tutto in un unico form, mantenendo separate dal punto di vista progettuale le interfaccie dei singoli sottosistemi, per mantenere semplicitÓ di sviluppo e la modularitÓ del sw.
E' una cosa possibile usando il framework .net?

grazie anticipatamente

Alberto

alka
23-08-2007, 10:10
Originariamente inviato da albert_insane
E' una cosa possibile usando il framework .net?

Se non fosse possibile, che lo avrebbero inventato a fare? :stordita:

P.S.: il linguaggio va indicato anche nel titolo, come da Regolamento (http://forum.html.it/forum/showthread.php?s=&threadid=973887).

albert_insane
23-08-2007, 10:23
Originariamente inviato da alka
Se non fosse possibile, che lo avrebbero inventato a fare? :stordita:

P.S.: il linguaggio va indicato anche nel titolo, come da Regolamento (http://forum.html.it/forum/showthread.php?s=&threadid=973887).

1. chiedo scusa per aver dimenticato di specificare il linguaggio..
2. la risposta che mi attendo va al di lÓ del semplice "Ŕ/non Ŕ possibile", se qualcuno sa darmi dei suggerimenti per l'implementazione gliene sar˛ grato.

Saluti

alberto

alka
23-08-2007, 10:48
Originariamente inviato da albert_insane
la risposta che mi attendo va al di lÓ del semplice "Ŕ/non Ŕ possibile", se qualcuno sa darmi dei suggerimenti per l'implementazione gliene sar˛ grato.

La risposta Ŕ stata data proprio per questo motivo: la trattazione Ŕ piuttosto ampia, e dovresti documentarti prima sul .NET Framework in quanto tale (e sui tipi di moduli supportati) per poter affrontare l'argomento. Per questo, basta acquistare documentazione tecnica, consultare MSDN o guide e tutorial online.

Per quanto riguarda l'applicazione, la descrizione Ŕ molto sintetica quindi non Ŕ possibile approfondire pi¨ di tanto la problematica, se non dicendo semplicemente che Ŕ sufficiente suddividere la logica in classi mettendole in librerie separate e sviluppare l'applicazione visuale distintamente.

In conclusione, non hai definito accuratamente qual Ŕ il punto su cui hai dei dubbi.
E' necessario farlo, in quanto Ŕ improponibile affrontare qui una trattazione estesa di tutti i tipi di dati o di file che Ŕ possibile creare con il framework, oppure approfondire la gamma completa degli aspetti OOP del problema.

albert_insane
23-08-2007, 11:07
provo a metterla pi¨ semplice..
le classi dei sottosistemi sono piccole, per ora tralascio l'idea di creare librerie. quel che mi basta Ŕ conoscere una maniera veloce per progettare una interfaccia che si possa inserire a piacimento all'interno del form principale - ad esempio: una serie di controlli appartenenti a tale interfaccia, che vengono visualizzati all'interno di una groupbox. se si seleziona un altro sottosistema, il contenuto della groupbox viene sostituito con i controlli dell'interfaccia del nuovo sottosistema.

Ŕ logico che la progettazione di gui sotto .net richiede documentazione specifica e la conoscenza dei principi di funzionamento del framework. purtroppo come si sa...il tempo Ŕ la variabile pi¨ importante :)

saluti

alberto

r1s0lut0r3
23-08-2007, 11:12
Ciao, in merito alla tua domanda, io programmo in Visual Basic ma dovrebbe essere uguale, cambia solo la sintassi del linguaggio.
Devi creare un'applicazione MDI (Multiple Document Interface). Se conoscli il .NET Ŕ abbastanza seplice, ti crei le Forms ognuna con la sua bella interfaccia e le richiami tramite la fiestra principale che avrai denominato come contenitore(Parent) delle altre che avrai dichiarato come figlie(Child).

Per creare un programma a struttura MDI con .NET Crei una prima finestra pricnipale e metti la proprietÓ IsMdiContainer a true.
DopodichŔ crei una ad una le tue Form figlie che in realtÓ sono dei programmi a se stanti...
Crei un Menu nella finestra principale per aprire e chiudere le varie finestre e sei apposto.
Per fare in modo che ogni finestra figlia venga visualizzata nella form Madre devi da codice scrivere questo:
in Visual Basic
'Istanzia in memoria la nuova form...
Dim FormFiglia As New FormModello()
'Dice alla form figlia qual'Ŕ il suo genitore...
FormFiglia.MdiParent = Me
'Mostra la nuova form figlia...
FormFiglia.Show()

in C++
// Istanzia in memoria la nuova form...
FormModello^ FormFiglia = gcnew FormModello();
// Dice alla form figlia qual'Ŕ il suo genitore...
FormFiglia->MdiParent = this;
// Mostra la nuova form figlia...
FormFiglia->Show();

spero di essere stato quasi chiaro, non pretendo di esserlo stato al 100% ciauuuuzzzzzz!!!

Loading