Zdrojové kódy

Počet a typ portů Windows Program
Tiskárny ve Windows Program
Kontextové menu Program
ListView Program
3D prvky Program
XMS Note Program
Quick sort Program
QuickSearch Program
File System Object Program
Rotace obrázku Program
Informace z MP3 souboru Program
Přestupný rok Kód
Kontrola rodného čísla Kód
Kontrola ICO Kód
Jak otevřít soubor v Excelu Kód
Jak otevřít soubor ve Wordu Kód
API funkce WindowFromPoint Kód

Počet a typ portů Windows

Umí zjistit počet portů ve Windows a k nim patřičné informace, jako je název, jestli je port místní nebo síťový apod.
3197 bytů Kopírovat

Zpět na obsah


Tiskárny ve Windows

Zjišťuje počet a další informace o tiskárnách nakonfigurovaných v systémech Windows.
4732 bytů Kopírovat

Zpět na obsah


Kontextové menu

Ukazuje, jak vytvořit klasické kontextové menu pro textové pole (Copy, Paste ...)
12789 bytů Kopírovat

Zpět na obsah


ListView

Program předvádí možnosti kombinace různého textu v ListView. Např. normální text, tučný text apod.
5745 bytů Kopírovat

Zpět na obsah


3D prvky

Ukazuje jak vytvořit 3D CommandButton, ListBox a TextBox
2030 bytů Kopírovat

Zpět na obsah


XMS Note

Něco jako Poznámkový blok, samozřejmě se zdrojovými kódy. Hezký a docela jednoduchý příklad, jak na to.
8107 bytů Kopírovat

Zpět na obsah


Quick sort

Hezký příklad na třídění pomocí metody Quicksort. Navíc přidává i odstraňování duplikátních prvků.
11893 bytů Kopírovat

Zpět na obsah


QuickSearch

Příklad, který možná nepatří do této rubriky, ale spíše do ActiveX. Je to knihovna DLL, vytvořená v jazyce C (se zdrojovými kódy). Obsahuje tři velmi chytré funkce pro práci se soubory.
8740 bytů Kopírovat

Zpět na obsah


File System Object

Visual Basic, od verze 6.0, obsahuje nový objekt pro práci se soubory a složkami, File System Object. Tento příklad je na jeho použití, přímo od firmy Microsoft.
58962 bytů Kopírovat

Zpět na obsah


Rotace obrázku

Jednoduchý příklad ukazující rotaci obrázku o 90 a 180 stupňů.
8845 bytů Kopírovat

Zpět na obsah


Informace z MP3 souboru

Program ukazuje, jak vytáhnout informace z MP3 souboru, jako. např. jméno písně, autora, album apod. (tzv. ID3-TAG).
11691 bytů Kopírovat

Zpět na obsah


Přestupný rok

Nevíte jak zjistit, je-li rok přestupný? Na to je jednoduchá pomoc. Rok je přestupný, je-li dělitelný 4. Výjimku tvoří roky dělitelné 100 (ty přestupné nejsou), ale roky dělitelné 400 už zase přestupné jsou. Funkce, která na zadaný rok zjistí, zda je přestupný, může vypadat třeba takto:

Public Function JePrestupny(rok As Integer) As Boolean
  JePrestupny = False

  If rok Mod 4 = 0 Then
    If rok Mod 100 = 0 Then
      If rok Mod 400 = 0 Then JePrestupny = True
    Else
      JePrestupny = True
    End If
  End If
End Function

nebo poněkud méně přehledněji

Public Function JePrestupny(ByVal rok As Integer) As Boolean
  JePrestupny = IIf((rok Mod 4 = 0), _
                  IIf((rok Mod 100 = 0), _
                    IIf((rok Mod 400 = 0), True, False), _
                  True), _
                False)
End Function

Zpět na obsah


Kontrola rodného čísla

Přípustné hodnoty pro první část rodného čísla (před lomítkem) jsou tyto:

První dvojčíslí (rok) 00 - 99
Druhé dvojčíslí (měsíc) 01 - 12, 51 - 62
Třetí dvojčíslí 1-31 pro leden, březen, květen, červenec, srpen, říjen, prosinec
1-30 pro duben, červen, září, listopad
1-29 pro únor

Druhá část (za lomítkem) je do roku 1953 trojmístná, od roku 1954 je přidávána kontrolní číslice, která je celočíselným zbytkem po podílu devítimístné části rodného čísla a čísla 11. Je-li zbytek 0, pak kontrolní číslice je 1, je-li zbytek 10, je kontrolní číslice 0.

Zpět na obsah


Kontrola ICO

Aby těch kontrol nebylo málo, přidáme si ještě jednu.

Maximální i minimální délka je 8 znaků, přesněji řečeno číslic, protože ICO může obsahovat pouze čísla.

Přípustné hodnoty jsou od 00000001 do 99999994.

Prvních 7 čísel je pořadové číslo, proslední je kontrolní. Ta se vypočte takto:

Jednotlivé číslice se zprava násobí čísly 2, 3, 4, 5, 6, 7, 8 a součiny se sečtou. Výsledné číslo dělíme čislem 11 a celočíslený zbytek odečeteme od čísla 11. Rozdíl je kontrolní číslo. Stejně jako u rodného čísla, je-li zbytek 0, kontrolní číslice je jedna, je-li zbytek 10, kontrolní číslice je 0.

Zpět na obsah


Jak otevřít soubor v Excelu

Chcete-li otevřít soubor v Excelu, musíte vytvořit objekt Excel.Application. A to buď pomocí funkce CreateObject, nebo pomocí vložení odkazu na objektovou knihovnu MS Excel. My si zde ukážeme druhý případ. Takže vložte do projektu odkaz na Microsoft Excel Object Library (z menu Project | References) a napište tento kód.

Dim myExcel As New Excel.Application
With myExcel
  .Workbooks.Add			'přidá nový soubor
  .Range("A1") = "1.154"		'vyplní tři buňky
  .Range("A2") = "2.455"
  .Range("A3") = "=A1+A2"
  .Range("A3").NumberFormat = "0.00"	'nastaví formát buňky A3
  .Visible = True			'ukáže Excel na obrazovce
End With

Dim myExcel As New Excel.Application
With myExcel
  .Workbooks.Open "E:\TEXT.IK\odkrnov.xls"	'otevře soubor
  .Visible = True				'ukáže Excel
End With

Zpět na obsah


Jak otevřít soubor ve Wordu

S Wordem je to velice podobné jako s Excelem. Pouze musíte přidat odkaz na Microsoft Word Object Library.

Dim myWord As New Word.Application
  
With myWord
  .Documents.Add				   'Vytvoří nový dokument
  .ActiveDocument.Content = "Word z Visual Basicu" 'Napíše text
  .Visible = True				   'Ukáže Word
End With

Zpět na obsah


API funkce WindowFromPoint

Tato funkce, jak již napovídá název, vrací handle okna v zadané pozici na obrazovce. Oknem se rozumí také např. textbox, listbox, nebo jiné objekty uvnitř okna. Tzn. vrácené číslo nemusí být handle programového okna, ale jen nějakého prvku.

Deklarace funkce vypadá takto:

Declare Function WindowFromPoint Lib "user32.dll" (ByVal xPoint As Long, _
  ByVal yPoint As Long) As Long 

xPoint je číslo na ose X
yPoint je číslo na ose Y

A k čemu to všechno může být? Malý příklad, který zjistí titulek okna, které se nachází v místě kurzoru myši:

Dim mousepos As POINT_TYPE
Dim wintext As String, slength As Long
Dim hwnd As Long
Dim retval As Long

retval = GetCursorPos(mousepos)
hwnd = WindowFromPoint(mousepos.x, mousepos.y)
If hwnd = 0 Then
  Debug.Print "V uvedeném místě se nenachází žádné okno"
  End
End If

slength = GetWindowTextLength(hwnd)
wintext = Space(slength + 1)
slength = GetWindowText(hwnd, wintext, slength + 1)
Debug.Print "Titulek okna: "; Left(wintext,sLength)

Zpět na obsah