Počítače a programování 2 pro obor EST BPC2E PŘEDNÁŠKA 5

Slides:



Advertisements
Podobné prezentace
Standardní knihovní funkce pro práci s textovými řetězci
Advertisements

Počítače a programování 1 Přednáška 13 Jiří Šebesta.
Vytvoření dokumentu bylo financováno ze zdrojů Evropského sociálního fondu a státního rozpočtu ČR. Název projektu: Výuka programování na střední škole.
Úvod do programování v prostředí Windows
Seminář C++ 5. cvičení Dědičnost Ing. Jan Mikulka.
Přednáška 11 Jiří Šebesta
LOV, Listbox, Poplist a Combobox v Oracle Forms LOV – seznam hodnot, které se zobrazí po stisku klávesy Enter v textovém poli. LOV – seznam hodnot, které.
Počítače a programování 2 Přednáška Jiří Šebesta.
Pole, ukazatele a odkazy
BLIŽŠÍ POHLED NA TŘÍDY, DĚDIČNOST - úvod
PJV151 Vnořené a vnitřní členy mohou být členy tříd a interfejsů. Je-li X obalem Y a Y je obalem Z, pak Z získá jméno X$Y$Z - kompilací vzniknou classy.
Programování v C++ Cvičení.
Výpočetní technika Akademický rok 2011/2012 Letní semestr Novák Petr
POČÍTAČOVÁ MYŠ Společně s klávesnicí slouží jako spojovací prostředek mezi PC a uživatelem. Toto polohovací zařízení převádí informace o svém pohybu po.
J a v a Začínáme programovat Lucie Žoltá. Odkazy - oficiální stránky (překladače, help, metody, vývojové prostředí NetBeans,...)
Ing.Josef Veselý Označení šablony a vzdělávací sady viz.rozpis.
OS Windows. Tento operační systém byl vytvořen pro snazší ovládání počítače běžnými uživateli. Například stačí jednou definovat připojená zařízení (tiskárny…)
OSNOVA: a) Řetězce v C b) Funkce stdio.h pro řetězce c) Funkce string.h pro řetězce d) Příklad Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
Ing. Josef Veselý Označení šablony a vzdělávací sady viz.rozpis.
Přehled pro vytvoření formuláře
Seminář C cvičení STL, Trolltech Ing. Jan Mikulka.
Ing. Josef Veselý Označení šablony a vzdělávací sady viz.rozpis.
Uživatelská dialogová okna
Seminář C cvičení Obsluha výjimek Ing. Jan Mikulka.
C# - prvky UI – vlastnosti a události Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Alg91 Textové soubory Na rozdíl od jiných typů souborů jsou textové soubory určené pro gramotné lidské oko. Textový soubor je posloupnost znaků členěná.
OSNOVA: a)Programování se soubory b)Záloha databáze v souboru c) Příklady Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače a programování.
OSNOVA: a) Úvod do OOPb) Třídy bez metod c) Třídy s metodamid) Konstruktory a destruktory e) Metody constf) Knihovní třídy g) Třídy ve tříděh) Přetížení.
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro vstup a výstup 12 Verze
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Power Point– sestavujeme prezentaci
Power Point– popis prostředí
Tvorba uživatelských formulářů
OSNOVA: a) Přetížení členských funkcí b) Dědičnost tříd Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače a programování 2 pro obor EST BPC2E.
OSNOVA: a) Příkazy pro cykly II. b) Příkazy pro řízení přenosu c) Příkazy – příklad d) Řetězce v C e) Funkce “stdio.h“ pro řetězce f) Funkce “string.h“
OSNOVA: a) Příkazy pro větvení b) Příkazy pro cykly c) Příkazy pro řízení přenosu d) Příklad Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
OSNOVA: a)Funkce – úvod b) Hlavičky funkcí c) Rekurze funkcí d)Knihovny funkcí e)Příklady Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
POWER POINT 1 Základní pojmy Power Point - základní pojmy.
© 2000 VEMA počítače a projektování spol. s r. o..
STRING A UKAZATELE. Co to je řetězec? Řetězec v Javě je samostatný objekt. Je konstantní, co znamená, že jednou vytvořený řetězec nelze změnit. Chceme-li.
Textový procesor (MS Word) Ing. Jan Roubíček. Práce s dokumenty VY_32_INOVACE_10_2_02_AP.
Základy práce na PC Ing. Jan Roubíček. Konfigurace Windows VY_32_INOVACE_10_1_05_AP.
Počítače a programování 1 7.přednáška. Základy Pole ve třídách a metodách Pole Arrays.
OSNOVA: a) Algoritmy třídění b) Třídění dynamických záznamů Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače a programování 1 pro obor EST.
OPERAČNÍ SYSTÉMY.
Autor:Ing. Pavel Brož Předmět/vzdělávací oblast:Informační a komunikační technologie Tematická oblast:Práce se standardním aplikačním programovým vybavením.
Windows Presentation Foundation Ovládací prvky. Ovládací prvky Všechny standardní prvky jsou dostupné a některé nové Třídy jsou společné pro WPF System.Windows.Controls,
Vazby dynamických proměnných,databázové systémy Přednáška č. 10.
OSNOVA: a) Ukazatel b) Pole a ukazatel c) Pole ukazatelů d) Příklady Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače a programování 1 pro.
Jazyk C A0B36PRI - PROGRAMOVÁNÍ Část II.
Počítače a programování 2 pro obor EST KPC2E TUTORIÁL 3
Pokročilé datové typy (struktury, unie, dynamické proměnné)
Práce se soubory a řetězci Přednáška č. 9. Práce se soubory v C (1)  Knihovna #include  Knihovna #include  Ukazatel FILE *stream;  Otevření souboru.
KURZ ZÁKLADY PRÁCE S POČÍTAČEM 1 kopírování a vkládání
Počítače a programování 2 pro obor EST BPC2E PŘEDNÁŠKA 11
JavaScript úvod. Jazyky webového vývojáře Dynamická stránka  aktivně mění svůj obsah v reakci na činnost uživatele  zpracování na straně serveru (PHP,
VYTVÁŘENÍ e-LEARNINGOVÝCH MATERIÁLŮ Přednáší Mgr. Jaromír Kozel
Databáze MS ACCESS 2010.
Grafická úprava sestavy Access (15). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická škola.
Počítače a programování 2
PRACOVNÍ PLOCHA Vasyl Lutsak.
Přehled pro vytvoření formuláře
Jaroslav Kudr pro OATGM
Instalace Javy ( pro Windows )
Vzorové řešení zápočtového testu
Počítače a programování 2 pro obor EST BPC2E PŘEDNÁŠKA 3
Výukový materiál zpracován v rámci projektu
TNPW1 JavaScript Ing. Jiří Štěpánek.
Výukový materiál zpracován v rámci projektu
C# přehled vlastností.
Transkript prezentace:

Počítače a programování 2 pro obor EST BPC2E PŘEDNÁŠKA 5 OSNOVA: a) Úvod do MS Visual Studia b) Formulářová aplikace c) Příklady formulářových aplikací Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně

Úvod do MS Visual Studia (1/4) Projekt pro Windows: hlavičkové soubory soubory xxx.h zdrojové soubory soubory xxx.c nebo xxx.cpp zdroje (resources) = především grafické objekty s danými vlastnostmi a chováním soubory xxx.rc (xxx.ico)

Úvod do MS Visual Studia (2/4) Zdroje: nabídky klávesové zkratky bitové rastry, ikony, kurzory znakové řetězce panely nástrojů dialogová okna Dialogové okno: základní objekt (každé okno je dialogové okno) ovládací prvky v dialogovém okně jsou opět dialogová okna se speciálními vlastnostmi platí princip nadřízený vs. podřízený dialog

Úvod do MS Visual Studia (3/4) Dialogové okno (resp. prvek): vlastnosti (properties) – proměnné defi-nující vlastnosti okna (prvku) a události (events), tj. funkce vyvolané při vzniku určité události v objektu (okně), např. kliknutí myší modalita oken modální okno, ne-lze opustit bez za-vření (příznak stylu WS_VISIBLE nastaven) nemodální lze kdykoli opustit (defokusovat)

Úvod do MS Visual Studia (4/4) Základní typy Win aplikací: využívající MFC (Microsoft Foundation Class Library) SDI (Single-document interface) – aplikace, kdy se pracuje pouze s jedním dokumentem MDI (Multiple-document interface) – aplikace, kdy se pracuje s více dokumenty současně (např. MS Visual Studio je MDI aplikace) Aplikace na bázi dialogu – jedno dialogové okno pro jednodušší programy využívající standardní prostředky Windows Formulářová aplikace pro Windows Kde získat MS Visual Studio Professional 2005/2008/2010/2012/2013: MSDN AA FEKT VUT v Brně

Formulářová aplikace (1/10) Založení projektu (MSVS 2008/2010): new project

Formulářová aplikace (2/10) Tvorba formuláře (úprava vlastností + vkládání ovládacích prvků do designu Form1.h[design]) :

Formulářová aplikace (3/10) Automaticky vygenerovaný kód pro nastavení ovládacího prvku ve Form1.h : this->ColorBox->BackColor = system::Drawing::Color::Transparent; this->ColorBox->Controls->Add(this->RB_blue); this->ColorBox->Controls->Add(this->RB_green); this->ColorBox->Controls->Add(this->RB_red); this->ColorBox->ForeColor = system::Drawing::SystemColors::ControlText; this->ColorBox->Location = System::Drawing::Point(2, 86); this->ColorBox->Name = L"ColorBox"; this->ColorBox->Size = System::Drawing::Size(88, 100); this->ColorBox->TabIndex = 1; this->ColorBox->TabStop = false; this->ColorBox->Text = L"Color"; this reprezentuje ukazatel na tento formulář

Formulářová aplikace (4/10) Generování funkce pro ošetření události ve Form1.h je vygenerována hlavička funkce události, do které lze vepsat tělo s poža-dovaným kódem … private: System::Void RB_blue_Click(System::Object^ sender, System::EventArgs^ e) { this->My_text->ForeColor = System::Drawing::Color::Blue; }

Formulářová aplikace (5/10) Funkce main() ve Form1.cpp #include <stdafx.h> #include "Form1.h" using namespace BPC2E_Ex112; [STAThreadAttribute] int main(array<System::String ^> ^args) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault (false); // Create the main window and run it Application::Run(gcnew Form1()); return 0; } Projekt: BPC2E_Ex112

Formulářová aplikace (6/10) Windows Form aplikace ve MSVS2013: new project Nelze založit formulářovou aplikaci přímo, je nutné nejprve založit prázdný projekt CLR Empty Project s vhodným jménem

Formulářová aplikace (7/10) Pro formulářovou aplikaci je třeba přidat v Project – Add (vyvolat pravým tlačítkem): UI – Windows Form s vhodným jménem např. MyForm.h nebo Form.h

Formulářová aplikace (8/10) Dále je třeba doplnit MyForm.cpp o následující kód: #include "MyForm.h" using namespace System; using namespace System::Windows::Forms; [STAThread] void Main(array<System::String ^> ^args) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault (false); Ex105::MyForm form; Application::Run(%form); } Podle názvu projektu a formuláře upravit.

Formulářová aplikace (9/10) Nastavit v Project – Properties: Linker - System

Formulářová aplikace (10/10) Nastavit Linker – Advanced – Entry Point na jméno startovací funkce v MyForm.cpp, např. Main

Příklady formulářových aplikací (1/7) Příklad 1: Vytvořte program jako formulářovou aplikaci pro jednoduchou kalkulačku – sčítání, odečítání, násobení a dělení dvou racionálních čísel. Vizuální návrh formuláře ve Form.h[design]

Příklady formulářových aplikací (2/7) Funkce pro načtení textu z TextBoxu s konverzí na double double get_A(void) { return System::Convert::ToDouble(this->text_A->Text); } double get_B(void) return System::Convert::ToDouble(this->text_B->Text); ovládací prvek formuláře TextBox pojmenovaný text_B proměnná (člen) TextBoxu volání konverzní metody ukazatel na tento formulář

Příklady formulářových aplikací (3/7) Ošetření událostí – kliknutí na jednotlivá tlačítka private: System::Void bt_plus_Click(System::Object^ sender, System::EventArgs^ e) { this->Res->Text = System::Convert::ToString(get_A()+get_B()); } … private: System::Void bt_div_Click(System::Object^ sender, System::EventArgs^ e) this->Res->Text = System::Convert::ToString(get_A()/get_B()); třída System metoda třídy System ukazatel na tento formulář volání konverzní metody volání funkcí pro čtení vstupů Projekt: BPC2E_Ex113

Příklady formulářových aplikací (4/7) Příklad 2: Vytvořte formulářový program pro jednoduchou databázi počítačů (položky: výrobce, cena a velikost paměti) se záznam až 20ti počítačů s dynamickým přístupem. Vizuální návrh formuláře

Příklady formulářových aplikací (5/7) Sestavení vlastní knihovny funkci pocitac.h #include <stdlib.h> #include <string.h> #include "stdafx.h" typedef struct t_pc { char prod[ 20]; // name of the producer int price; // price of the computer float mem; // RAM capacity in GB } a_pc; void add(char* _prod, int _price, float _mem); // adding new computer void sort(void); // sorting according to the price t_pc* get_fwd(void); // point out to the next computer t_pc* get_bwd(void); // point out to the prev. computer int show_price(void);// get price of an added pc int show_cheap(void);// get price of the cheapest pc

Příklady formulářových aplikací (6/7) Deklarace pole ukazatelů na záznamy + příklad funkce add() v pocitac.cpp #include <stdafx.h> #include "pocitac.h" // definition of the struct t_pc t_pc *katalog[20]; // array of pointers to computers int index=0; // first free position in the katalog int ptr=index-1; // pointer to a pc displayed in edits void add(char* _prod, int _price, float _mem) { t_pc *my_pc; my_pc = (t_pc*) malloc(sizeof(t_pc)); strcpy(my_pc->prod, _prod); my_pc->price = _price; my_pc->mem = _mem; katalog[ptr=index++] = my_pc; }

Příklady formulářových aplikací (7/7) Přilinkování knihovny a ošetření události stisku tlačítka Add ve Form1.h #pragma once #include "pocitac.h" using namespace System::Runtime::InteropServices; namespace BPC2E_Ex114 { …. private: System::Void AddBtn_Click(System::Object^ sender, System::EventArgs^ e) { add((char*)Marshal::StringToHGlobalAnsi(ProdEdit->Text).ToPointer(), System::Convert::ToInt32(PriceEdit->Text), System::Convert::ToDouble(MemEdit->Text)); ShowLbl->Text = System::Convert::ToString(show_price()); } volání konverzní metody VisualString => *char Projekt: BPC2E_Ex114

Téma následující přednášky DĚKUJI ZA POZORNOST Téma následující přednášky Grafika pro Windows ve MS Visual Studiu