Dopsání kódu modulu a procedury
AhojSvete
Přehled informací

Deklarace veřejných proměnných
ve standardním modulu
Abychom mohli v aplikaci používat veřejné (globální) proměnné, musíme je deklarovat
ve standardním
modulu, jinak by tyto proměnné nebyly veřejné (i v případě, že by byly deklarované
jako public!)
V aplikaci budeme potřebovat následující čtyři veřejné
(globální) proměnné:
- gvarSouradnice - veřejná proměnná pro uchování souřadnic bodu vložení
textu,
- gtextVkladanyText - veřejná proměnná pro uchování vkládaného textu,
- gtextVyska - veřejná proměnná pro uchování velikosti textu (v bodech),
- gboolVykreslovat - veřejná proměnná určující zda se text má vykreslit
(zadání proběhlo v pořádku) nebo nemá (uživatel stornoval dialog - zobrazí
se chybová zpráva),


Postup tvorby hlavičky
procedury AhojSvete()
Dále potřebujeme vytvořit novou proceduru. Hlavičku procedury můžeme napsat
ručně nebo použít dialogový box Přidat
proceduru. Z vlastních zkušeností doporučujeme přidávat procedury pomocí
dialogového boxu, přidání nové procedury je takto jednodušší a rychlejší.
Postup přidání nové procedury
pomocí dialogového boxu Přidat proceduru
- ve VBA IDE otevřete nabídku Vložit,
- vyberte položky Procedura..., otevře se dialogový box Přidat
proceduru,
- v dialogovém boxu zadejte:
- Název (název procedury): - AhojSvete (v názvu můžou být i háčky
a čárky, ale nedoporučuje se),
- Typ (typ procedury): - procedura,
- Obor (obor platnosti procedury): - veřejný (procedura bude viditelná
ze všech částí projektu),

- dokončete vytvoření procedury AhojSvete() zmáčknutím tlačítka OK.

Zobrazení prázdné procedury
AhojSvete() v okně kódu
Do okna kódu se zobrazí deklarace nové procedury typu Sub:

Nyní nám už nic nebrání, abychom do procedury AhojSvete() dopsaly následující
programový kód.

Doplnění jednotlivých částí kódu
procedury AhojSvete()
Během psaní funkcí Vám bude VBA pomáhat se psaním kódu programu pomocí funkce
IntelliSense.
- na začátku procedury nejprve vytvoříme deklaruje objekt utilObj. Proměnné
utilObj následně přiřadíme typ Utility. Objekt utilObj využijeme pro převod
souřadnic na pole typu Variant,
- do veřejných proměnných zadáme
počáteční hodnoty (vkládaný text, velikost textu, bod vložení). Bod
vložení musíme nejprve převést,
- před zobrazením formuláře ještě doplníme do proměnné gboolVykreslovat
hodnotu False = nevykresluj nic,
- zobrazíme formulář.
V tomto bodě zůstane běh programu do doby, než je formulář ukončen,
- po uzavření formuláře, otestujeme jestli se má zobrazit
text nebo ne (určuje hodnota proměnné gboolVykreslovat),
- je-li gboolVykreslovat = True:
- je-li gboolVykreslovat = False:
- zobrazíme
varování ve formě tzv. Message boxu.
Public Sub AhojSvete()
Dim utilObj As Object
' deklarace objektu
Set utilObj = ThisDrawing.Utility
' přiřazeni objektu Utility
gtextVkladanyText = "Nazdárek světe!"
'ini hodnota textu
gtextVyska = 5 'ini hodnota výšky textu
utilObj.CreateTypedArray gvarStredKruz, vbDouble, 50, 50, 0
' převod tří hodnot souřadnic na pole Variant
gboolVykreslovat = False 'ini nevykreslovat
UserForm1.Show
'zobrazení formuláře pro zadání hodnot
If gboolVykreslovat Then
Set textObj = ThisDrawing.ModelSpace.AddText _
(gtextVkladanyText, gvarSouradnice, gtextVyska)
'Vytvoření textového objektu
textObj.Color = acRed 'nastavení barvy textu na červenou
ThisDrawing.Application.ZoomExtents
'zvětšení výkresu
ThisDrawing.SaveAs ("PozdravSFormularem.dwg")
'uložení výkresu pod novým jménem
Else
MsgBox ("Spatné zadání nebo byl dialog stornován")
' zobrazení chybové zprávy
End If
End Sub

Další postup
Nyní nám zbývá dopsat kód
obslužných funkcí.
