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

VB – 39. lekceVB – 39. lekce

 

VB – 39. lekce

Google       Google       21. 1. 2006       13 622×

39.1 Používání znakové sady Unicode
39.2 Úvod do tabulky FlexGrid
39.3 práce s tabulkou FlexGrid
39.4 Výběr a formátování
39.5 Domácí úkol
39.6 V další lekci
..

Reklama
Reklama

39.1 Používání znakové sady Unicode

Možná jste někdy chtěli použít znakovou sadu Unicode ve vašem programu a nevěděli jste, jak na to. Pokud tedy potřebujete někam vložit znak typu Unicode, nebudou vám stačit běžné textboxy a budete muset využít trochu jinou nabídku.

Takže si otevřete dialog s výběrem komponent a pohledejte Microsoft Forms 2.0 Object Library. Zobrazí se vám asi 14 nových objektů, které podporují znakovou sadu Unicode. Také asi bude málo funkce


Chr(i)

Na místo toho použijeme funkci


ChrW(i)

Všechny znaky si pak můžeme vytisknout třeba do nového listboxu.


For i = 1 To 4096
    List1.AddItem ChrW(i) & " - " & i
Next i

Kdykoliv budeme potřebovat vytisknout nějaký speciální znak, nebude to problém.


39.2 Úvod do tabulky FlexGrid

FlexGrid je mřížka, která nám umožňuje jednoduše spravovat databáze. Můžeme do ní zobrazovat různé záznamy a psát faktury. Práce s ní je v celku jednoduchá, ale ne příliš zajímavá. Umět ji používat se může hodit, už jsem ji také několikrát využil, když se mi nechtělo dělat žádný vlastní objekt.

První je nutné ji do formuláře vložit. Provedeme to tak, že klikneme pravým tlačítkem na toolbox a dáme components. Najdeme si právě FlexGrid. Vložíme si jeden na formulář a můžeme začít.

Pojem sloupec a řádek je nejspíš každému jasný, my se teď podíváme jak s nimi pracovat, jak do nich psát data a podobně. Prvně se podívejme, jak FlexGrid vypadá:

Můžete si všinout i dialogu, kde je celkem dost možností, můžete si je vyzkoušet. Důležitý je nejen počet sloupců a řádků, ale také počet pevných sloupců a řádků, do kterých nemůže uživatel zapisovat.


39.3 Práce s tabulkou FlexGrid

Musíme do nich tedy něco vepsat pomocí kódu. Jak? No je to dosti podobné práci s dvourozměrným polem. Viz kód:


Private Sub Command1_Click()
fgTest.TextMatrix(0, 1) = "Jmeno"
fgTest.TextMatrix(0, 2) = "věk"
For i = 1 To fgTest.Rows - 1
    fgTest.TextMatrix(i, 0) = i
Next i
End Sub

Můžeme doplňovat jak po jednom prvku, tak pomocí cyklů. Můžete si také přidávat záznamy. Takto:


Dim i As Long
For i = 1 To fgTest.Rows - 1
    fgTest.TextMatrix(i, 0) = i
Next i
fgTest.AddItem i, i

K odebírání záznamů se používá


Private Sub Command2_Click()
    fgTest.RemoveItem (i)
    i = i - 1
End Sub

Pokud do toho všeho nechcete vměšovat další proměnnou, lze použít třeba tento kód:


Private Sub Command1_Click()
Dim i As Long
For i = 1 To fgTest.Rows - 1
    fgTest.TextMatrix(i, 0) = i
Next i
fgTest.AddItem fgTest.Rows, fgTest.Rows
End Sub

Private Sub Command2_Click()
fgTest.RemoveItem (fgTest.Rows)
End Sub

I zde je tedy jen jako počítadlo v cyklu. Ještě je důležité do buněk zapisovat. To budeme prozatím dělat přes textbox, takto:


Private Sub fgTest_Click()
   Text1.Text = fgTest.TextMatrix(fgTest.Row, fgTest.Col)
End Sub

Private Sub cmd_Click()
   fgTest.TextMatrix(fgTest.Row, fgTest.Col) = Text1.Text
End Sub

39.4 Výběr a formátování

Pokud chceme pracovat s větším výběrem, tak rozah výběru udávají vlastnosti


Row – RowSel
Col – ColSel

Pomocí nich se potom výběr formátuje nebo třeba maže. Výběr můžete třeba tímto způsobem označovat tučně:


Private Sub Command3_Click()
    fgTest.FillStyle = flexFillRepeat
    fgTest.CellFontBold = True
End Sub

Tento kód nám zajišťuje, že pracujeme s celým výběrem.


fgTest.FillStyle = flexFillRepeat

Zkuste napsat tohle:


fgTest.FillStyle = flexFillSingle

V tomto případě budete pracovat s jedinou buňkou. Ale to není vše, uživatele můžeme omezovat i jinak, třeba výběrem jen celých sloupců nebo řádků.

A ještě mnohem více věcí nám tento prvek nabízí, ale na to, co nám nabízí, se podíváme příště.


39.5 Domácí úkol

Dnes zkuste udělat malý Excel. Prostě program, do kterého budete moci zapisovat údaje, který bude mít uživatelsky definovaný počet sloupců a řádku a bude se do něj dát psát stejně jako do oken Excelu, ale stačí přes tu horní lištu. A můžete přidat i nějakou vlastní tvořivost (např. nastavení barev).


39.6 V další lekci

Propojení FlexGridu s databází

×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 RAD Studio a Windows Store

RAD Studio a Windows Store

RAD Studio je první vývojové prostředí se zabudovanou podporou balení aplikací typu Win32 a Win64 pro jejich umístění a šíření prostřednictvím Windows 10 Store.

Reklama
Reklama
Obrázek ke článku Testujte na 2 400+ Android a iOS zařízení

Testujte na 2 400+ Android a iOS zařízení

V dnešní době, kdy většina softwaru pro mobilní aplikace je tvořena a distribuována průběžně, mnohdy do celého světa je třeba zajistit také průběžnou automatizaci testování mobilního softwaru. V případě mobilních aplikací pro Android a iOS začíná být problém, jak testovat na obrovském množství kombinací HW variant, rozměrů, edic operačních systémů různých výrobců v různých částech světa na reálných zařízení. Simulátory a emulátory nejsou většinou to pravé. Pokud již testuji, jak si udělat vlastní beta distribuci opravdovým reálným testerům napříč platformami?

Obrázek ke článku Funkcie main vo Windows API

Funkcie main vo Windows API

V tretej časti seriálu o Windows API budeme hovoriť o funkčných prototypoch main. Funkčný prototyp je tvorený názvom funkcie a typom signatúry, pričom sa vynecháva telo funkcie. 

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ý