Grafické aplikace ve Windows Forms

V dnešní hodině si ukážeme vytváření grafických aplikací pomocí Windows Forms.
Jako první si musíme při vytváření projektu vybrat, že chceme vytvořit Aplikaci Windows Forms (.NET Framework)

Po nastavení jména projektu bychom měli vidět něco takového:

Abychom do našeho projektu umístili nějaký prvek, v tomto případě nadpis zvaný anglicky Label, můžeme ho přetáhnout z panelu nástroju nalevo.

V panelu Vlastnosti poté můžeme upravovat všechny vlastnosti tohoto textu.

Co zde můžeme upravit je například text našeho nadpisu a také velikost písma, aby byl náš nadpis větší.

Dále si přidáme tlačítko.

Stejně, jako u nadpisu, mu upravíme jeho text. Můžeme ho také přímo v našem návrhu roztáhnout, podobně jako třeba čtvereček v malování.
Když na něj pak dvakrát poklepneme, dostaneme se do kódu. Když jsme na něj dvakrát poklepali, vytvořil se nám nový void s názvem button1_Click.

...
namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            // Kód, co se spustí hned po spuštění aplikace
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // Kód, co se spustí po kliknutí na tlačítko

        }
    }
}
...

Když se vrátíme do návrhu naší grafické aplikace, klikneme na náš text a podíváme se do vlastností, všimněme si, že tento text má název label1.

Když se poté vrátíme zpět do kódu, můžeme po zmáčknutí tlačítka text tohoto labelu změnit. Uděláme to tak, že napíšeme nazevobjektu.vlastnost = hodnota.

Poté můžeme tlačítkem Spustit na horním panelu spustit náš program. Nyní se spustí naše grafická aplikace s textem a tlačítkem s tím, že pokud stiskneme tlačítko, změní se text.

Jednoduchý kvíz

V minulých hodinách jsme vytvořili jednoduchý kvíz. Nyní si ukážeme, jak ho vytvořit v grafické podobě.
První si přidáme TextBox.

Ve vlastnostech si můžeme přečíst, že jeho název je textBox1. V kódu z něho můžeme číst následovně:

...
private void button1_Click(object sender, EventArgs e)
{
    // Kód, co se spustí po kliknutí na tlačítko
    string answer = textBox1.Text;
}
...

S trochou další práce si můžeme vytvořit kvíz:

Zadání

Vytvořte podobný kvíz se dvěma otázkami na jakékoliv téma.

Příliš snadné?

Vytvořte kalkulačku, jenž bude vypadat takto: