Barra laterale

programmazione:mono:introduzione_winforms

Introduzione alle winforms di mono

Autore: Fabio Di Matteo
Ultima revisione: 25/03/2013

Tramite mono e il toolkit winforms è possibile realizzare delle applicazione che fanno uso di interfacce grafiche eseguibili su Gnu/Linux, Windows e MacOSX. Il codice che segue abbondantemente commentato altro non è che una specie di helloworld con tanto di makefile per linux.

codice c#

main.cs

using System;
using System.Drawing;
using System.Windows.Forms;
 
class MForm : Form {
 
	// E' meglio dichiarare le variabili dei controlli come private
	// cosi' saranno accessibili facilmente anche dalle funzioni callback
	private Button btn1;
	private TextBox tbox;
 
    public MForm() {
 
        //Disegno una finestra
        Text = "Test winform";
        Size = new Size(210, 210);
 
        //Disegno un bottone e associo una callback
        btn1 = new Button();
        btn1.Text = "Clicca qui";
        btn1.Parent = this; //associo come genitore la finestra corrente "MForm"
        btn1.Location = new Point(50, 30);
		btn1.Click += new EventHandler(OnClick); //associo la callback di nome OnClick
 
 
        //disegno una textbox
        tbox = new TextBox();
        tbox.Text="Ciao mondo";
        tbox.Parent = this;
        tbox.Location = new Point(50, 60);
 
        //centro la finestra nello schermo
        CenterToScreen();
    }
 
 
	void OnClick(object sender, EventArgs e) { //cosa fa quando viene cliccato
			 // se clicco sul bottone ne cambio l'etichetta
			 // con il testo della textbox
			 btn1.Text = tbox.Text;
	}
 
}
 
 
 
 
class MApplication {
    public static void Main() {
		Application.EnableVisualStyles(); // per migliorare l'aspetto grafico
 
        MForm mf = new MForm();
        Application.Run(mf);
    }
}

Makefile

all:
	gmcs -r:System.Windows.Forms.dll -r:System.Drawing.dll  -target:winexe main.cs

Dipendenze

per avviare l'applicazione su windows è necessario avere installato il framework .NET >=2 (qualora non lo fosse gia'), su gnu/linux invece si devono installare gli runtime di mono.

Avviare l'applicazione

Su gnu/linux basta avviare con mono main.exe , su windows basta invece un doppio click sull'icona dell'eseguibile.


programmazione/mono/introduzione_winforms.txt · Ultima modifica: 18/04/2018 - 15:49 (modifica esterna)