User Tools

Site Tools


appunti3s:utilizzo_di_wxformbuilder
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


appunti3s:utilizzo_di_wxformbuilder [2020/06/08 22:20] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== Esempio di utilizzo di wxformbuilder ======
 +===== Premessa =====
 +Con [[http://wxformbuilder.org|wxformbuilder]] costruisco solo la Classe Base per la finestra (MyFrame).
 +Non devo modificare il codice generato da wxformbuilder (MyFrame.cpp) perché la classe base non deve contenere l'implementazione dei metodi (astratti).
 +
 +Creo invece una classe Derivata (MiaCornice) a partire dalla classe Base creata da wxformbuilder (MyFrame) in modo che ne erediti tutti gli attributi e tutti i metodi.
 +Poi implemento dentro la classe Derivata (MiaCornice) tutti i metodi di cui ho bisogno (per gestire gli eventi).
 +
 +===== Esempio =====
 +  - aprire wxformbuilder
 +  - (a destra) c'e' un progetto vuoto con delle propietà da modificare (a sinistra)
 +    * name: nome del progetto, a piacere...
 +    * path: cartella dove salva i file di codice generato automaticamente
 +    * file: nome del file che conterrà la classe Base (da NON modificare) es: MyFrame
 +    * namespace: a piacere MioNameSpace??? NON FUNZIONA???
 +  - aprire la scheda Form 
 +    * click prima icona a sinistra, crea una classe (NON UN OGGETTO) tipo wxFrame
 +    * (a destra) c'è un object (NON UN OGGETTO!) con delle proprietà da modificare (a sinistra)
 +    * name: a piacere es: MyFrame
 +    * title: testo sulla barra del titolo a piacere: Titolone blu
 +  - scheda Layout
 +    * click prima icona a sinistra, crea un oggetto tipo wxBoxSizer
 +    * a destra c'è un oggetto, a sinistra le proprietà da modificare
 +    * name: a piacere es: myBSizer1
 +  - Scheda Menu Toolbar
 +    * click prima icona a sinistra, crea un oggetto tipo wxStatusBar
 +    * a destra c'è un oggetto, a sinistra le proprietà da modificare
 +    * name: a piacere es: m_StatusBar1
 +    * fields: numero campi es: 2
 +  - Scheda Menu Toolbar
 +    * click seconda icona a sinistra, crea un oggetto tipo wxMenuBar
 +    * a destra c'è un oggetto, a sinistra le proprietà da modificare
 +    * name: a piacere es: m_MenuBar1
 +    * label: non viene visualizzato??
 +  - Scheda Menu Toolbar
 +    * click terza icona a sinistra, crea un oggetto tipo wxMenu
 +    * a destra c'è un oggetto, a sinistra le proprietà da modificare
 +    * name: a piacere es: m_Menu1
 +    * label: a piacere es: &File
 +  - Scheda Menu Toolbar
 +    * click quinta icona a sinistra, crea un oggetto tipo wxMenuItem
 +    * a destra c'è un oggetto, a sinistra le proprietà da modificare)
 +    * name: a piacere es: m_MenuQuit
 +    * label: a piacere es: quit...
 +    * id: e' il nome di una costante, che viene automaticamente definita usando #define...
 +    * di questo oggetto di devono modificare anche gli events(a sinistra): OnMenuSelect __Uscire__ (Cioè si indica solo il nome del metodo, senza parametri)
 +  - premere F6
 +    * selezionare la classe Base (MyFrame)
 +    * indicare il nome della futura classe derivata (MiaCornice)
 +    * indicare il nome del file (MiaCornice)
 +    * Generare il codice della classe DERIVATA nella cartella scelta al punto 2
 +  - premere F8
 +    * Generare il codice della classe BASE nella cartella scelta al punto 2
 +  - salvare e uscire
 +  - creare main.cpp e main.h
 +    * dentro main.cpp si deve scrivere una macro che sostituisce il main() e creare l'oggetto finestra1 dentro il costruttore MiaApp::MiaApp()
 +    * dentro main.h si deve scrivere una macro e includere gli altri file.h
 +  - editare MiaCornice.cpp
 +    * dentro cui bisogna solo implementare i metodi (Uscire) con il suggerimento // TO DO..//
 +  - per compilare tutto, eseguire il comando
 +    * <code> g++ main.cpp MiaCornice.cpp MyFrame.cpp `wx-config --libs` `wx-config --cxxflags` </code>
 +
  
appunti3s/utilizzo_di_wxformbuilder.txt · Last modified: 2020/06/08 22:20 by 127.0.0.1