none
Collegare piu' forms senza dover includere piu' volte gli stessi header RRS feed

  • Discussione generale

  • Ciao a tutti, ho il seguente problema:

    Sto sviluppando un'applicazione che prevede piu' form.

    vorrei includere,nella toolbar in alto di ogni form,un menu' a tendina che mi consenta di passare da un form all'altro semplicemente con un click sul bottone corrispondente o utilizzando la sua scorciatoia da tastiera.

    il mio problema e' che come saprete visual c++ crea un file header per ogni form che progettiamo e inseriamo...come faccio a richiamare le varie finestre senza includere gli header in modo circolare? (es.   il file clienti.h ha bisogno agenda.h e magazzino.h / il file agenda.h ha bisogno clienti.h e magazzino.h ecc...ecc...)

    grazie mille

    Buona giornata

     

    Andre

    mercoledì 9 novembre 2011 13:05

Tutte le risposte

  • Ciao,

    credo che una soluzione del genere sia possibile solo se in un file header a parte tu dichiari tutte le variabili e le classi necessarie: solo dichiarare. Poi includi il file, comuni.h ad esempio, che ti rende disponibile tutte le classi comuni del progetto. Una seconda soluzione sarebbe di creare una parte del progetto base, che ha classi e form comuni a tutto il progetto: poi in ciascun form includi gli header di quella parte. Stai attento perchè le inclusioni circolari ti danno un errore di compilazione. Nell'esempio sopra, l'header magazzino è in comune, e le due classi dipendono tra di loro: potresti, ad esempio, dichiarare le variabili comuni, o, se la classe Agenda contiene riferimenti della classe Cliente, la quale contiene riferimenti della classe Agenda, la dichiarazione della classe all'inizio di uno del file cliente.h e in agenda.h includi cliente.h.

    Spero di averti aiutato,


    Nicolò Zilio
    Personal blog: http://nicolozilio.wordpress.com/(With technical articles)
    Personal Web site: http://nicolozilio.altervista.org/
    mercoledì 9 novembre 2011 18:47
    Moderatore
  • Ciao Andre,

    Potresti per cortesia aggiornarci sul thread? Ti ha aiutato quanto suggerito da Nicolò?

     

    Grazie in anticipo,


    Irina Turcu

    Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e farli aumentare la conoscenza sui prodotti e le tecnologie Microsoft.

    LinkedIn

    lunedì 14 novembre 2011 14:08