Zdrojové kódy
Informace o prvcích aplikace
Program zobrazí handle, třídu a text všech prvků aplikace, kterou zadáváte jejím textem v titulkovém pruhu (po jednoduché úpravě můžete zadávat i jinak). |
11631 bytů | Kopírovat |
Zpět na obsah
Text více barvami
Zobrazuje text v PictureBoxu, vykreslený přechodem z jedné barvy do druhé. Po malé úpravě můžete funkci v modulu projektu jednoduše použít i ve svých programech. |
4509 bytů | Kopírovat |
Zpět na obsah
Více monitorů
Příklad ukazuje, jak zjistit počet a typ monitorů počítače a vypisovat text na kterémkoliv z nich. |
7374 bytů | Kopírovat |
Zpět na obsah
Přesun položek ListBoxu
Ukazuje, jak přesouvat položky z jednoho ListBoxu do druhého pomocí myši (Drag and Drop). |
6599 bytů | Kopírovat |
Zpět na obsah
MD5
Příklad ukazuje práci a algoritmem MD5 (Message Digest 5), který se používá pro kódování v protokolu SNMP. |
77315 bytů | Kopírovat |
Zpět na obsah
3D objekty
Program, který umožňuje vytvářet zadáváním souřadnic trojrozměrné objekty. Po spuštění vidíte čtyři čtverce. Jeden je nárys objektu, druhý bokorys, třetí půdorys a čtvrý zobrazuje pohled na objekt, se kterým je možno jakkoliv otáčet pomocí myši. Pro demonstraci jsou vytvořeny tři objekty, které si můžete nahrát tlačítkem Load Object. Více informací najdete v textovém souboru přiloženém k projektu. |
19482 bytů | Kopírovat |
Zpět na obsah
Ikona v system tray oblasti
Příklad ukazuje vytvoření UserControlu, tedy prvku, který usnadňuje přidávání ikony do oblasti system tray, tedy tam, kde jsou hodiny, stav klávesnice apod. |
17720 bytů | Kopírovat |
Zpět na obsah
Ini soubory
I když se dnes používá spíše registr, INI soubory se mohou hodit. Tato třída s nimi velice usnadňuje práci. |
7186 bytů | Kopírovat |
Zpět na obsah
Rozšíření ListBoxu a ComboBoxu
Třída, obsahující několik metod usnadňujících práci s ListBoxem a ComboBoxem, např. nastavení výšky rozbalovacího seznamu ComboBoxu,, kopírování obsahu jednoho prvku do druhého apod. |
3219 bytů | Kopírovat |
Zpět na obsah
Připojení síťového disku
Třída, která má dvě metody. Jednu pro připojení síťového disku, druhou pro jeho odpojení. |
2143 bytů | Kopírovat |
Zpět na obsah
Výpis zpráv souboru DLL
API funkce FormatMessage umí formátovat různé zprávy, její popis by vydal na samostatný článek. Umí však
také formátovat zprávy z jakékoliv knihovny, která má tabulku zpráv. Většinou jde o texty chyb. Tak můžete
např. jednoduše zobrazit chybové zprávy knihovny wininet.dll (knihovnu je potřeba nejdříve nahrát do paměti).
Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" _
(ByVal lpLibFileName As String) As Long
Declare Function FormatMessage Lib "kernel32" Alias "FormatMessageA" _
(ByVal dwFlags As Long, lpSource As Any, ByVal dwMessageId As Long, _
ByVal dwLanguageId As Long, ByVal lpBuffer As String, ByVal nSize As Long, _
Arguments As Long) As Long
Const FORMAT_MESSAGE_FROM_HMODULE = &H800
Private Sub Form_Load()
Dim hMod As Long, msg As String, ret As Long, i As Long
hMod = LoadLibrary("wininet.dll")
For i = 12000 To 12200
msg = Space(1024)
ret = FormatMessage(FORMAT_MESSAGE_FROM_HMODULE, ByVal hMod, i, 0&, msg, Len(msg), ByVal 0&)
If ret <> 0 Then
Debug.Print Left(msg, ret - 2)
End If
Next i
FreeLibrary hMod
End Sub
Zpět na obsah
Vysypání koše
Vysypání koše je možné voláním API funkce SHEmptyRecycleBin . Můžete vysypat buď koš na
jednom disku (zadáním jeho jména) nebo koš na všech discích (zadáním nulového řetězce).
Pokud vše proběhne v pořádku, funkce vrací hodnotu 0.
Declare Function SHEmptyRecycleBin Lib "shell32.dll" Alias "SHEmptyRecycleBinA" _
(ByVal hwnd As Long, ByVal pszRootPath As String, ByVal dwFlags As Long) As Long
'vysypání koše na disku C
SHEmptyRecycleBin Form1.hwnd, "C:\", 0
'vysypání koše na všech discích
SHEmptyRecycleBin Form1.hwnd, vbNullString, 0
Zpět na obsah
Změna souboru win.ini
Měníte-li nějaké údaje v souboru win.ini, můžete dát ostatním aplikacím vědět, že se něco změnilo a to pomocí
funkce SendMessage a zprávy WM_WININICHANGE . Pokud používáte pro změnu API funkci SystemParametersInfo , zprávu
zasílat nemusíte, stačí nastavit poslední parametr na hodnotu SPIF_SENDWININICHANGE .
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, _
ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const WM_WININICHANGE = &H1A
SendMessage HWND_BROADCAST, WM_WININICHANGE, 0, 0
Zpět na obsah
Výmaz složky
Pro výmaz složky je ve Visual Basicu příkaz RmDir . Neumí však mazat složku, která má nějaký obsah,
tzn. soubory nebo jiné složky. Proto je výhodnější použít metodu DeleteFolder objektu
FileSystemObject .
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder "C:\Temp", True 'nastavení True smaže i read-only složky
Zpět na obsah
Zaslání dat databáze Accessu poštou
Metoda SendObject objektu DoCmd umožňuje odeslat data z objektů
databáze jako přílohu zprávy pomocí jakéhokoliv poštovního programu využivajícího rozhraní MAPI.
Dokonce si můžete vybírat i z několika formátů přílohy (RTF, HTML apod.). Příklad pošle
data z tabulky zamestnanci ve formatu RTF Pavlu Kocichovi. Poslední dva parametry metody
jsou předmět a vlastní text zprávy.
Dim ac As New Access.Application
Set ac = New Access.Application
ac.OpenCurrentDatabase "data.mdb"
myAccess.DoCmd.SendObject acSendTable, "zamestnanci", acFormatRTF, _
"Pavel Kocich", , , "Subject", "Body"
Zpět na obsah
Připojení tabulky do databáze Accessu
Databáze v Accessu může obsahovat i tzv. propojené tabulky. Jde o tabulky, které jsou fyzicky v úplně jiné
databázi, pouze je na ně vytvořeno propojení (něco jako zástupce ve Windows). Samotné připojení je možné
z kódu vytvořit pomocí metody TransferDatabase objektu DoCmd (příklad
vytvoří v databázi data.mdb tabulku linkJmena, ktera ukazuje na tabulku jmena z databáze data2.mdb).
Dim ac As New Access.Application
Set ac = New Access.Application
ac.OpenCurrentDatabase "data.mdb"
ac.DoCmd.TransferDatabase acLink, "Microsoft Access", "data2.mdb", acTable, "jmena", "linkJmena"
Zpět na obsah
|