Jednorozměrné pole - WPF
2. Analýza a návrh řešení
2.3. Operace s polem
Do třetího řádku základní mřížky formuláře (s indexem 2) umístíme další mřížku (Grid). Tuto mřížku rozdělíme do 3 sloupců, které využijeme jako oddělené sekce Plnit, Výstup a Výpočet s jednotlivými tlačítky - viz Obrázek 1.
Do prvního sloupce této vložené mřížky umístíme objekt typu StackPanel. Do tohoto objektu jako první umístíme popisek (Label) "Plnit", který bude tvořit záhlaví sekce. Pod popisek umístíme 3 tlačítka:
- Náhodně - plnění vektoru prvky, jenž každý obsahuje náhodně vygenerovanou hodnotu na základě rovnoměrného rozdělení v intervalu, jehož dolní mez představuje hodnota, která je načtena z prvního řádku základní mřížky, tj. hodnota vstupního pole Minimum umístěného na formuláři a hodnota horní meze, která je načtena ze vstupního pole Maximum na formuláři
- Jednotlivě - plnění vektoru na základě hodnoty uvedené ve vstupním poli Hodnota u prvku, který je indexován pomocí Index: umístěného v prvním řádku základní mřížky
- Nulovat - plnění vektoru prvky s hodnotou 0
Do druhého sloupce umístíme objekt typu StackPanel. Do tohoto objektu jako první umístíme popisek (Label) "Výstup", který bude tvořit záhlaví sekce. Pod popisek umístíme 2 tlačítka:
- Vektor jako text - výpis prvků vektoru do řádku za sebou v objektu typu TextBox, kde jednotlivé prvky jsou odděleny čárkou
- Do mřížky - výpis prvků vektoru do jednotlivých řádků v objektu typu ListView
Do třetího sloupce mřížky umístíme objekt typu StackPanel. Do tohoto objektu jako první umístíme popisek (Label) "Výpočet", který bude tvořit záhlaví sekce. Pod popisek umístíme 4 tlačítka:
- Minimum - hledání prvku vektoru s nejmenší hodnotou, včetně vypsání indexu minima
- Maximum - hledání prvku vektoru s největší hodnotou, včetně vypsání indexu maxima
- Průměr - výpočet aritmetického průměru ze všech prvků vektoru
- Seřadit - vzestupné třídění všech prvků vektoru
Formulář bude obsahovat následující objekty (kontrolky), které budou vnořeny následujícím způsobem:
- Grid (třetí řádek základní mřížky formuláře)
- StackPanel
- Grid
- StackPanel
- Label
- Button: BtnNahodne
- Button: BtnJednotlive
- Button: Nulovat
- StackPanel
- Label
- Button: BtnVektorJakoText
- Button: BtnDoMrizky
- StackPanel
- Label
- Button: BtnMinimum
- Button: BtnMaximum
- Button: BtnPrumer
- Button: BtnSeradit
- WrapPanel
- Button: BtnKonec
Obrázek 1: Návrh GUI - tlačítka pro operace s polem (JednorozmernePoleWPF)
Formulář bude obsahovat následující prvky - viz Obrázek 2.
Obrázek 2: Návrh GUI - operace s polem - účel jednotlivých objektů v prvním řádku mřížky formuláře (JednorozmernePoleWPF)