Archivi categoria: Progettazione di GUI in C++

Contenuti, materiali per acquisire competenze e conoscenze sulla progettazione di interfacce grafiche in C++ con il Toolkit WxWidgets.

Video Lezione Pratica n.1 – C++

In questa lezione estratta dal corso Udemy dall’Algoritmo al C++ Base realizzato dal Team Informatica OpenSource il prof. Giuseppe Sportelli membro del Team ti spiega come realizzare dei semplici algoritmi.
Tali algoritmi sono realizzati con il software Flowgorithm e poi sono codificati in linguaggio C++,

Se vuoi iscriverTi al corso ecco il link di iscrizione
in promozione a soli 12,99 € Iva inclusa fino al 13 Ottobre 2022


In particolare le tematiche affrontate sono:

  • Creazione della tabella dati
  • Scrittura dell’algoritmo con il software Flowgorithm
  • Strutture fondamentali della programmazione procedurale quali:
    Struttura di sequenza
    Struttura condizionale semplice e annidata
  • Codifica in C++ degli algoritmi
  • Istruzioni di input/Output in C++ con la Console
  • Dichiarazione delle variabil
  • La funzione “int main”
  • Istruzioni “if ..else”
  • Il tipo char in C++ e sua applicazione semplice

Video Lezione Pratica n.1 – Dal Corso Udemy dal titolo “Dall’algoritmo al C++ Base”

Video Tutorial WxWidgets n.2

In questo secondo tutorial, ti spiego come utilizzare WxWdgets con il C++ per realizzare un programma con interfaccia GUI che permette di gestire anche strutture dati semplici in C++.
Ti spiego come creare una finestra con controlli standard e un menù di gestione.

Scarica il sorgente del progetto

Video – Installare e testare Code::Blocks in Linux Ubuntu

Code::Blocks è un IDE Integrated Devolopmente Enviroment per tutti i sistemi operativi Linux/Windows/mac che consente lo sviluppo software in Linguaggio C/C++ e altro ancora.
Nel video Installiamo e testiamo con un semplice programma in C++ l’ambiente di sviluppo.
Ricordati, che per usare Code::Blocks in linux devi installare anche GCC.


Le strutture dati – Lettura n.1

Le strutture dati rivestono una grande importanza, nella scrittura di programmi per il calcolatore, in quanto permettono di creare dei dati strutturati organizzati secondo quelle che sono le richieste di progettazione del progetto software. Tali strutture dati possono essere derivate dai tipi di dati elementari o semplici o atomici disponibile in tutti i linguaggi di programmazione moderni dal C al C# passando per Java e Python.
E’ pertanto importante avere piena conoscenza e capacità di utilizzare tali strutture dati.

Strutture dati definizione

Strutture dati definizione

Per definizione una struttura dati è un Insieme di dati organizzati in modo collettivo a partire dai tipi di dati atomici o semplici.
Le strutture dati sono distinte in base al meccanismo di memorizzazione che può essere la Memoria RAM o una memoria di massa come un Hard Disk o una chiavetta USB.
Per tale motivo possono essere temporanee o permanenti a seconda se la memorizzazione avviene in RAM o su memoria di massa.
Le strutture dati, inoltre sono classificate in:
Statiche o dinamiche; nel primo caso la struttura mantiene le sue caratteristiche e dimensione, nel secondo caso può variare la dimensione e la struttura durante l’esecuzione del programma.
Analizziamo le strutture di dati temporanee, come già detto perché utilizzano la Memoria RAM per la loro memorizzazione, in un’altra lettura è discussa l’uso di struttura dati permanenti come i Files o in casi molto più complessi I Database, che rappresentano gli Archivi di dati.
Le strutture dati sono inoltre classificabili in:

  • Omogenee ovvero composte da dati dello stesso tipo; in queste rientrano:
    • gli array o vettori
    • le matrici
    • le tabelle
    • le enumerazioni o insiemi
  • Eterogenee
    • Record

Le Enumerazioni rappresentano un insieme ordinato di valori in numero finito ad esempio:
colore={rosso,verde,giallo,blu}
Sono strutture dati che sono di solito utilizzate per discriminare varie possibilità per certe tipologie di dati in modo da non consentire all’utente una scelta arbitraria. Ad esempio un programma che richieda l’ordine di un capo di abbigliamento da parte di un negoziante per una nuova fornitura può obbligare lo stesso a scegliere un insieme predefinito di colori disponibili e non tutti quelli possibili. Gli array o vettori sono strutture di dati identificate da un nome collettivo, le cui componenti sono dello stesso tipo e sono selezionate da un indice,
Ad esempio in C/C++ int x[]={1,-3,0,1,2}; float z[]={3.14,6.28,1.414}; in questo modo è dichiarato un array con il numero di elementi e la dimensione rimane fissa.
In Python per definire un Array è possibile utilizzare la notazione:
vet =[1.2,3,4] oppure cars=[“fiat”,”ford”,”opel”]
In Java gli array possono essere definiti con la seguente notazione:
int [] x ={1,2,3,4}; oppure string [] words =
{‘apple’, ‘banana’, cherry’};
In C# int[] numeri = {1,2,3,4};
In tutti questi casi si parla di dichiarazione di array come lista di elementi, è possibile dichiarare degli array in modo statico e dinamico a seconda delle necessità costituite da un numero di elementi predefinito o vuoto.

Prospetto riassuntivo per vari linguaggi di programmazione molto utilizzati.

Linguaggio di programmazioneDichiarazione statica
C++int x[10];
C#int [] x = new int[10];
Javaint [] = new int[10];
Pythondipende se trattato come lista o con la libreria NumPy
Definizione dell’array in vari linguaggi di programmazione

Come si può notare in Python non esiste una dichiarazione unica, è possibile dichiarare un array vuoto con la dichiarazione del tipo: lista =[] ho inserito la parola lista perché in Python l’array può essere trattato come lista o come array se uso la libreria Numpy. L’uso di Numpy sarà affrontato in una lettura a parte. Solo un esempio di come dichiarare un array con Numpy in Python:

import numpy as np
x=np.array([])
Queste due righe dichiarano un array con Numpy vuoto.

Nella prossima lettura esamineremo le altre strutture dati non discusse.


Video Lezione n.5 Creare un’applicazione WxWidgets

Video Lezione n.5 C++ – Creare un’applicazione WxWdigets

Sommario della lezione:

  • Creare una semplice applicazione in C++ che sfrutta le potenzialità dell’interfaccia grafica grazie all’uso dei GUI in C++.
  • Utilizzare le librerie open source WxWidgets in C++ per gestire un menu e gli eventi. Tutto in salsa OOP (Programmazione Orientata agli Oggetti)