Na ukázku, jak lze vytvořit jednoduchou aplikaci uvádím tuto, nenáročnou na programování: vytvoříme formulář s textovým polem, do kterého načteme jméno člověka, kterého chceme pozdravit. Po zmáčknutí tlačítka "Pozdrav!" se otevře druhý formulář s pozdravem.
Ukázka v zipu je k dispozici zde. |
Naše ukázková aplikace využívá dva ovládací prvky (textové pole a tlačítko). Tlačítko na základě vzniklé události (Click) provede nějakou akci. Tímto způsobem - tedy na základě událostí - funguje ovládání všech ovládacích prvků.
Nyní si popíšeme celý průběh vytvoření formuláře s ovládacími prvky.
Vytvoříme nový projekt, vybereme možnost Visual C# Projects -> Windows Application. Po zadání názvu projektu se vygeneruje úvodní formulář a k němu inicializační zdrojový kód. Je na místě si všimnout, že pokud používáte Visual Studio, v konstruktoru našeho formuláře se nachází privátní metoda InitializeComponent(). Tato metoda nastaví všechny prvky formuláře tak, jak jsme si je rozvrhli v módu návrhu formuláře. Zároveň je doporučováno zasahovat do této metody pokud možno co nejméně a radši vše ostatní provádět mimo ni.
Máme vytvořený prázdný formulář. Nyní do něj vložíme ovládací prvky textové pole (TextBox) a tlačítko (Button). K textovému poli také vložíme popisek (Label), aby bylo jasno, čím se toto textové pole má plnit. Všechny komponenty pro používání ve formuláři se nacházejí na liště Toolboxu. Postupně z něj tedy vložíme (buď přetažením myší nebo kliknutím na komponentu a poté jejím vytvořením myší na požadovaném místě) do našeho formuláře tlačítko a textové pole. Do projektu poté vložíme ještě jeden formulář, který bude obsahovat text pozdravu.
V této chvíli máme vytvořené ovládací prvky, které samy o sobě ještě nic neudělají. Je třeba provést nějakou akci po stisku tlačítka "Pozdrav!". Ta se vytvoří přidáním reakce na událost tlačítka Click.
... System.Windows.Forms.Button button1 = new System.Windows.Forms.Button; ... // eventFunction je funkce reagujici na udalost tlacitka Click button1.Click += new System.EventHandler(ButtonEventFunction); ... // proved akci void ButtonEventFunction(object sender, System.EventArgs e) { ... } |
Totéž, ale mnohem jednodušeji, provedeme dvojím poklepáním myší na tlačítko "Pozdrav!" v návrhu formuláře (na obrázku s názvem Form1 - Form1.cs [Design]). Microsoft Visual Studio za nás vytvoří samo funkci pro zpracování události (se jménem button1_Click) a samo přidá k události Click tlačítka s názvem button1 EventHandler. Poté, co se vytvoří obsluha události tlačítka, Visual Studio nás nasměruje do této vytvořené funkce. My do této funkce pouze přidáme, že chceme vytvořit nový formulář s textem pozdravu.
... private void button1_Click(object sender, System.EventArgs e) { // formular s textem pozdravu, predam jmeno toho, koho chci pozdravit new FormGreet(this.textBoxWho2Greet.Text); } ... |
K tomu, aby se formulář po stisku tlačítka objevil, a my ho takto mohli vytvořit, musíme přetížit konstruktor. V konstruktoru předáme jméno typu string, koho chceme pozdravit. V tom samém konstruktoru zároveň nastavíme, aby se formulář s pozdravem zobrazil.
this.Show() = true; |
Za zmínku ještě stojí obsluha události Exit_Click(). Ta se provádí tehdy, pokud chceme aplikaci zavřít klasicky kliknutím na křížek vpravo nahoře. Musíme ji přidat do projektu, jinak by totiž kliknutí na křížek nedělalo nic.
private void Exit_Click(object sender,EventArgs e) { // uvolneni zdroju this.Dispose(); Application.Exit(); } |
A máme zajištěno, že aplikaci budeme moci uzavřít.