User Tools

Site Tools


appunti3s:utilizzo_di_wxformbuilder

Esempio di utilizzo di wxformbuilder

Premessa

Con 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

  1. aprire wxformbuilder
  2. (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???
  3. 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
  4. 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
  5. 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
  6. 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??
  7. 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
  8. 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)
  9. 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
  10. premere F8
    • Generare il codice della classe BASE nella cartella scelta al punto 2
  11. salvare e uscire
  12. 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
  13. editare MiaCornice.cpp
    • dentro cui bisogna solo implementare i metodi (Uscire) con il suggerimento TO DO..
  14. per compilare tutto, eseguire il comando
    •  g++ main.cpp MiaCornice.cpp MyFrame.cpp `wx-config --libs` `wx-config --cxxflags` 
appunti3s/utilizzo_di_wxformbuilder.txt · Last modified: 2020/06/08 22:20 by 127.0.0.1