Zdrojové kódy

Telnet serverProgram
BubeníkProgram
ManagerProgram
AnimaceProgram
PolylineAPI
PolylineToAPI
PolyPolylineAPI
MoveToExAPI
EllipseAPI
RectangleAPI
RoundRectAPI
PolygonAPI
PolyPolygonAPI

Telnet server

Pro ty z vás, kdo se zajímají o komunikaci na síti, je tento příklad. Nedělá nic jiného, než že ukazuje, jak vytvořit telnetový server.
63267 bytůKopírovat

Zpět na obsah


Bubeník

Velmi pěkně udělaný program na tvorbu rytmů. Co je na něm tak zajímavého je to, že vás naučí pracovat s midi.
27772 bytůKopírovat

Zpět na obsah


Manager

Příklad, který vás naučí pracovat se spoustou věcí ve Windows 9x. Umí zobrazovat dialogy z ovládacích panelů, pracovat se soubory, zjišťovat cestu ke speciálním složkám atd.
21661 bytůKopírovat

Zpět na obsah


Animace

Jednoduchý a přehledně udělaný příklad na vytvoření animace.
10745 bytůKopírovat

Zpět na obsah


Polyline

Vykresluje složenou čáru na zadané grafické zařízení. Každá jednotlivá čára je určena počátečním a koncovým bodem. Za počáteční bod je brán koncový bod předchozí čáry.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function Polyline Lib "gdi32" _
  (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long

hdc - kontext zařízení, na které se bude vykreslovat
lpPoint - pole obsahující jednotlivé souřadnice
nCount - počet bodů, tzn. počet prvků v poli lpPoint

'Vykreslí čáru složenou ze dvou čar
'První bude mít souřadnice 0,0 a 100,100, druhá 100,100 a 200,0
Dim p(0 To 2) As POINTAPI

Form1.ForeColor = vbBlack
p(0).x = 0: p(0).y = 0
p(1).x = 100: p(1).y = 100
p(2).x = 200: p(2).y = 0
Polyline Form1.hdc, p(0), 3

Zpět na obsah


PolylineTo

Vykresluje složenou čáru na zadané grafické zařízení. Každá jednotlivá čára je určena počátečním a koncovým bodem. Za počáteční bod je brán koncový bod předchozí čáry. Narozdíl od API funkce Polyline nezačíná kreslit zadaným počátečním bodem, ale za počáteční bod bere aktuální souřadnice pera. Tzn. je-li aktuální souřadnice pera 0,0 a vy zadáte jako první bod 100,100 je hned vykreslena čára.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function PolylineTo Lib "gdi32" _
  (ByVal hdc As Long, lppt As POINTAPI, ByVal cCount As Long) As Long

hdc - kontext zařízení, na které se bude vykreslovat
lpPoint - pole obsahující jednotlivé souřadnice
nCount - počet bodů, tzn. počet prvků v poli lpPoint

'Vykreslí čáru složenou ze tří čar
'První bude mít souřadnice 100,300 a 0,0, druhá 0,0 a 100,100, třetí 100,100 a 200,0
Dim p(0 To 3) As POINTAPI, curPoint As POINTAPI

Form1.ForeColor = vbBlack

'přesune se do bodu 100, 300
MoveToEx Form1.hdc, 100, 300, curPoint

p(0).x = 0: p(0).y = 0
p(1).x = 100: p(1).y = 100
p(2).x = 200: p(2).y = 0
PolylineTo Form1.hdc, p(0), 3

Zpět na obsah


PolyPolyline

Vykresluje zadaný počet složených čar na grafické zařízení. Každá jednotlivá čára je určena počátečním a koncovým bodem. Za počáteční bod je brán koncový bod předchozí čáry. Všechny body všech čar jsou uloženy v jednom poli. Druhé pole určuje, kolik prvků má každá čára.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function PolyPolyline Lib "gdi32.dll" _
  (ByVal hdc As Long, lpPoint As POINTAPI, lpdwPolyPoints As Long, _
   ByVal nCount As Long) As Long

hdc - kontext zařízení, na které se bude vykreslovat
lpPoint - pole obsahující jednotlivé souřadnice
lpdwPolyPoints - pole, které určuje kolik bodů z pole lpPoint má každá čára
nCount - počet čar, tzn. počet prvků v poli lpdwPolyPoints

Dim p(0 To 5) As POINTAPI 'určuje souřadnice jednotlivých bodů
Dim n(0 To 1) As Long 'určuje počet bodů v každé čáře

Form1.ForeColor = vbBlack

'první čára
p(0).x = 0: p(0).y = 0
p(1).x = 100: p(1).y = 100
p(2).x = 200: p(2).y = 0
n(0) = 3 'počet bodů první čáry

'druhá čára
p(3).x = 200: p(3).y = 200
p(4).x = 300: p(4).y = 300
p(5).x = 400: p(5).y = 200
n(1) = 3 'počet bodů druhé čáry

PolyPolyline Form1.hdc, p(0), n(0), 2

Zpět na obsah


MoveToEx

Nastaví souřadnice aktuálního bodu grafického zařízení.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function MoveToEx Lib "gdi32" _
  (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, lpPoint As POINTAPI) As Long

hdc - kontext grafického zařízení
x - souřadnice nového aktuálního bodu na ose x
y - souřadnice nového aktuálního bodu na ose y
lpPoint - do této proměnné jsou vráceny souřadnice starého aktuálního bodu

'Přesune aktuální bod na souřadnice 100, 300
Dim curPoint As POINTAPI
MoveToEx Form1.hdc, 100, 300, curPoint

Zpět na obsah


Ellipse

Vykreslí elipsu na zadané grafické zařízení. Elipsa je určena pomocí obdélníku, do kterého je vykreslena.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function Ellipse Lib "gdi32" _
  (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, _
   ByVal X2 As Long, ByVal Y2 As Long) As Long

hdc - kontext grafického zařízení
X1 - souřadnice x levého horního rohu obdélníku
Y1 - souřadnice y levého horního rohu obdélníku
X2 - souřadnice x pravého dolního rohu obdélníku
Y2 - souřadnice y pravého dolního rohu obdélníku

Form1.ForeColor = vbBlack
'Kružnice se středem v bodě 100,100 a poloměrem 100.
Ellipse Form1.hdc, 0, 0, 200, 200
'Elipsa se středem v bodě 100,50
Ellipse Form1.hdc, 0, 0, 200, 100

Zpět na obsah


Rectangle

Vykresluje pravoúhlý čtyřúhelník na zadané grafické zařízení.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function Rectangle Lib "gdi32" _
  (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, _
   ByVal X2 As Long, ByVal Y2 As Long) As Long

hdc - kontext grafického zařízení
X1 - souřadnice levého horního rohu na ose x
Y1 - souřadnice levého horního rohu na ose y
X2 - souřadnice pravého dolního rohu na ose x
Y2 - souřadnice pravého dolního rohu na ose y

'Vykreslí čtverec s délkou strany 200 pixelů
Form1.ForeColor = vbBlack
Rectangle Form1.hdc, 0, 0, 200, 200

Zpět na obsah


RoundRect

Vykreslí pravoúhlý čtyřúhelník se zaoblenými rohy na zadané grafické zařízení.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function RoundRect Lib "gdi32" _
  (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, _
   ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long

hdc - kontext grafického zařízení
X1 - souřadnice levého horního rohu na ose x
Y1 - souřadnice levého horního rohu na ose y
X2 - souřadnice pravého dolního rohu na ose x
Y2 - souřadnice pravého dolního rohu na ose y
X3 - délka oblouku na ose x
Y3 - délka oblouku na ose y

'Vykreslí čtverec s délkou strany 200 pixelů, délka zaoblení bude 20 pixelů
Form1.ForeColor = vbBlack
RoundRect Form1.hdc, 100, 100, 200, 200, 20, 20

Zpět na obsah


Polygon

Vykreslí polygon na zadané grafické zařízení. Vrcholy polygonu se zadávají do pole, poslední bod pole je spojen s prvním.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function Polygon Lib "gdi32" _
  (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long

hdc - kontext grafického zařízení
lpPoint - pole obsahující souřadnice jednotlivých vrcholů
nCount - počet vrcholů, tzn. počet prvků v poli lpPoint

'Vykreslí šestiúhelník
Dim p(0 To 5) As POINTAPI
Form1.ForeColor = vbBlack
p(0).x = 100: p(0).y = 0
p(1).x = 200: p(1).y = 0
p(2).x = 300: p(2).y = 100
p(3).x = 200: p(3).y = 200
p(4).x = 100: p(4).y = 200
p(5).x = 0: p(5).y = 100
Polygon Form1.hdc, p(0), 6

Zpět na obsah


PolyPolygon

Vykreslí několik polygonů naráz na zadané grafické zařízení. Vrcholy polygonů se zadávají do jednoho pole, poslední vrchol polygonu je spojen s prvním.

Pokud funkce skončí v pořádku, vrací hodnotu 1, jinak 0.

Declare Function PolyPolygon Lib "gdi32" _
  (ByVal hdc As Long, lpPoint As POINTAPI, lpPolyCounts As Long, _
   ByVal nCount As Long) As Long

hdc - kontext grafického zařízení
lpPoint - pole obsahující souřadnice jednotlivých vrcholů
lpPolyCounts - pole obsahující počet vrcholů v jednotlivých polygonech
nCount - počet polygonů, tzn. počet prvků v poli lpPolyCounts

Dim p(0 To 8) As POINTAPI, n(0 To 1) As Long

Form1.ForeColor = vbBlack

'první polygon
p(0).x = 1: p(0).y = 1
p(1).x = 100: p(1).y = 1
p(2).x = 100: p(2).y = 100
p(3).x = 1: p(3).y = 100
n(0) = 4

'druhý polygon
p(4).x = 200: p(4).y = 200
p(5).x = 300: p(5).y = 200
p(6).x = 350: p(6).y = 250
p(7).x = 300: p(7).y = 300
p(8).x = 200: p(8).y = 300
n(1) = 5

PolyPolygon Form1.hdc, p(0), n(0), 2

Zpět na obsah