VB - 17. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

VB - 17. lekceVB - 17. lekce

 

VB - 17. lekce

Google       Google       13. 6. 2005       9 657×
17.1 Formuláře MDI
17.2 Práce s prvky objektu
17.3 Vlastnosti projektu
17.4 Domácí úkol
17.5 V další lekci

..
Reklama
Reklama

17.1 Formuláře MDI

Pokud máte v plánu nějaký větší projekt, tak tohle vám určitě usnadní práci. Určitě to znáte. Jsou to plovoucí okna v jednom okně hlavním. Třeba různé formuláře obsahující různé nástroje s různými funkcemi. Tady je ukázka z jednoho mého zatím nedokončeného projektu. Je to ukázka oněch MDI formulářů. Není na nich nic složitého, ale nevyplatí se to využívat, pokud máte třeba jen tři formuláře. Hned vám popíšu, jak dosáhnout toho, aby byly. Vytvoříme si standardní formulář. Dále jako byste chtěli vložit nový formulář, ale místo obyčejného formuláře vložíme formulář MDI. To bude rodičovský formulář pro ostatní formuláře, tedy formuláře dceřiné. To jsou ty uvnitř. Pokud chcete z některého formuláře udělat dceřiný, musíte mu nastavit vlastnost MDIChild na True. Pokud budete chtít najednou zobrazit nějaké formuláře, zadejte kód:


Private Sub MDIForm_Load()
  Load Form2
  Form2.Show
End Sub

Na jejich používání není nic složitého, co by vám mělo komplikovat život. Spíš naopak by vám měly pomoci usnadnit si práci při ovládání vašich programů a jejich využití je vhodné třeba u programů, které jsou podobné těm, jako je malování, nebo těm, které obsahují nesčetná množství formulářů, jež chcete mít neustále na očích. Pracovní plocha MDI formuláře se zvětšuje s plochou, kterou zabírají dceřiné formuláře, a to tím způsobem, že se zobrazí posuvník.


17.2 Práce s prvky

Představte si, že pomocí modulu provádíte nějaký úkon a využíváte prvky z jednoho formuláře. Takže musíte vypisovat celou cestu k vlastnosti. A to třeba takto:


V modulu:
Sub secti()
  Form2.Text3 = Val(Form2.Text1) + Val(Form2.Text2)
End Sub

Ve formuláři:
Private Sub Command1_Click()
  secti
End Sub

Nebo pokud to uděláte pomocí proměnných, které nahrazují objekty, může to vypadat takto:


V modulu:
Sub secti(cislo1 As TextBox, cislo2 As TextBox, vysledek As TextBox)
  vysledek = Val(cislo1) + Val(cislo2)
End Sub

Ve formuláři:
Private Sub Command1_Click()
secti Text1, Text2, Text3
End Sub

Z příkladu by mělo být jasné, jak to funguje, ale přece jen to trochu přiblížím; měli byste si ještě pamatovat, jak jsme probírali procedury a funkce, tak tady se k nim opět vracíme, ale jako proměnnou vlastně používáme objekt, takže s ním můžeme jako s objektem pracovat. Třeba takto můžeme změnit barvu pozadí:


Sub chngclr(cislo1 As TextBox)
  cislo1.BackColor = RGB(256, 128, 0)
End Sub

A tak můžeme s objektem pracovat v modulech. Možná vám to přijde zbytečné, ale nenechte se zmýlit. Pokud děláte rozsáhlé projekty, je to mnohem čistší a přehlednější řešení. Určitě jej budeme hodně využívat, protože velmi zjednodušuje práci, a především výrazně zpřehledňuje zdrojový kód.


17.3 Vlastnosti projektu

Jelikož věřím, že už něco umíte a třeba byste si chtěli i nějaký program nebo třeba jen prográmek rozšířit a chcete, aby vypadal trošku profesionálněji, můžete se chvilku věnovat vlastnostem projektu. Okno s tímto nastavením najdeme v nabídce Project >> Projekt properties. V okně je pět záložek. Nás budou zajímat první tři. Další dvě záložky slouží pro kompilaci komponent ActiveX a knihoven DLL. V první záložce si můžeme zvolit typ toho, co budeme kompilovat. Zdali to bude standardní projekt EXE nebo knihovna či komponenta ActiveX. Vedle si pak můžeme vybrat, který formulář bude aplikaci začínat, tedy ten, který se zobrazí jako první. V dalším řádku si můžete projekt pojmenovat. Dále si můžeme vybrat soubor, ze kterého budeme čerpat nápovědu. A popis projektu.

V další záložce s popiskem Make si můžeme zvolit verzi programu a to tak, že v prvním si vybíráme hlavní číslo, ve druhém vedlejší číslo a ve třetím políčku si vybíráme číslo revize. Potom si můžeme vybrat titulek aplikace a formulář, ze kterého bude použita ikona na ikonu programu. A ještě můžeme naši aplikaci obohatit o nějaké informace o společnosti apod.

Další záložka nastavuje charakter kompilace a její optimalizaci. Tato záložka není příliš podstatná.


17.4 Domácí úkol

Vytvořte program, který bude počítat různé veličiny a pro každou z nich bude potřeba jeden formulář, tyto formuláře budou na jednom rodičovském, v jehož menu si budeme moci vybírat, co budeme počítat a jaký formulář se nám zobrazí a navíc se vše bude počítat přes moduly.


17.5 V další lekci

Funkce API

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Jiří ChytilAutor programuje ve VB, zajímá se o elektrotechniku, studuje na SOŠ Elektrotechnické - obor číslicová technika.
Web    

Nové články

Obrázek ke článku Malware KONNI se úspěšně skrýval 3 roky. Odhalil ho bezpečnostní tým Cisco Talos

Malware KONNI se úspěšně skrýval 3 roky. Odhalil ho bezpečnostní tým Cisco Talos

Bezpečnostní tým Cisco Talos odhalil celkem 4 kampaně dosud neobjeveného malwaru, který dostal jméno KONNI. Ten se dokázal úspěšně maskovat od roku 2014. Zpočátku se malware zaměřoval pouze na krádeže citlivých dat. Za 3 roky se ale několikrát vyvinul, přičemž jeho současná verze umožňuje útočníkovi z infikovaného počítače nejenom krást data, ale i mapovat stisky na klávesnici, pořizovat screenshoty obrazovky či v zařízení spustit libovolný kód. Pro odvedení pozornosti oběti zasílali útočníci v příloze také obrázek, zprávu a výhružkách severokorejského režimu či kontakty na členy mezinárodních organizací.

Reklama
Reklama
Obrázek ke článku Pouze jedna z deseti lokálních firem ví o pokutách plynoucích z GDPR

Pouze jedna z deseti lokálních firem ví o pokutách plynoucích z GDPR

Trend Micro, celosvětový lídr v oblasti bezpečnostních řešení a VMware, přední světový dodavatel cloudové infrastruktury a řešení pro podnikovou mobilitu, oznámily výsledky výzkumu mezi českými a slovenskými manažery zodpovědnými za ochranu osobních údajů, který zjišťoval, jak jsou připraveni na nové nařízení o ochraně osobních údajů (GDPR). Většina firem v České republice a na Slovensku nad 100 zaměstnanců je již s novým nařízením GDPR obeznámena. Výzkum provedený ve spolupráci s agenturou Ipsos ukázal, že téměř 8 firem z 10 o nařízení ví, přičemž jeho znalost je o něco vyšší na Slovensku (89 %) než v České republice (69 %).

Obrázek ke článku Vyděračský software Locky se vrací, tváří se jako potvrzení platby, odhalil tým Cisco Talos

Vyděračský software Locky se vrací, tváří se jako potvrzení platby, odhalil tým Cisco Talos

Jeden z nejznámějších ransomwarů, Locky, se vrací. Po většinu roku 2016 patřil mezi nejrozšířenější vyděračské softwary. Ke svému šíření využíval emailové kampaně s infikovanými přílohami. Ransomware Locky byl rozesílán prostřednictvím botnetu (internetový robot zasílající spamy) Necurs. Jeho aktivita na konci roku 2016 téměř upadla a spolu s ní i šíření ransomwaru Locky. Před několika týdny se Necurs opět probudil a začal posílat spamy nabízející výhodný nákup akcií. Dne 21. dubna zaznamenal bezpečnostní tým Cisco Talos první velkou kampaň ransomwaru Locky prostřednictvím botnetu Necurs za posledních několik měsíců.

Obrázek ke článku Dovozci baterií mění logistiku, letadlo nahrazuje námořní doprava

Dovozci baterií mění logistiku, letadlo nahrazuje námořní doprava

Dovozci baterií do mobilů či notebooků upouštějí od letecké přepravy zboží. V letošním roce plánují dovézt až 80 % produktů lodí. Přitom před 5 lety byla většina baterií do mobilních přístrojů dovezených do České republiky přepravována letadlem. Za proměnou způsobu transportu akumulátorů stojí zpřísnění pravidel pro leteckou přepravu, která přinášejí vyšší náklady i náročnou agendu.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý