Nisam procitao ni jednu jedinu knjigu napisanu o Visual Basicu. Ja sam ucio eksperimentisanjem i analiziranjem raznih primera, poceo sam sa verzijom 4.0. Basic sam vec poznavao od ranije (QBasic, C64 i Spectrum) tu sam procitao po nesto ali se ne secam naslova bio sam 3. ili 4. razred osnovne skole.
API funkcije ces najlakse pohvatati uz pomoc API-GUIDE-a (dosta primera) ili API Text Viewer-a koji dolazi uz Visual Studio 6.
Posto deklarisanje promenljivih znas, ovako deklarises [url=http://sr.wikipedia.org/sr-el/funkcija_(programiranje)]funkcije[/url] koje pozivas iz dinamickih biblioteka:
Code:
Private Declare Function [function name] Lib [library] ([arg1], [arg2]) As [return type]
Biblioteka i f-ja u njima ima puno, tako da bi najbolje bilo da preuzmes neku dokumentaciju sa interneta, Googlaj malo.
Code:
' Predpostavljam da ti ovaj deo nije jasan
With mi '<- 1*
.cbSize = Len(mi) ' <- Broj bajtova koji su nam potrebni da bi sacuvali promenjivu (u ovom slucaju tip) smesta u polje mi.cbSize
.fMask = MIM_BACKGROUND ' mi.fMask je maska koja pokazuje na sta ce se odnositi sledeca operacija
.hbrBack = CreateSolidBrush(&HFF) ' Posto WIN32 API radi malo drugacije nego sam VB6,
ne mozemo direktno upisati vrednost za odredjenu boju vec moramo napraviti "cetku" koja ce sadrzati informaciju o boji.
SetMenuInfo GetMenu(Me.hWnd), mi ' Vrednost mi cemo prekopirati na meni koji se nalazi na formi sa handle-om Me.hWnd
' Dalje se sve ponavlja, samo za podmenije.
.fMask = MIM_BACKGROUND Or MIM_APPLYTOSUBMENUS ' <- Predpostavljam da ti je http://en.wikipedia.org/wiki/Or - logicka disjunkcija[/url] poznata
.hbrBack = CreateSolidBrush(&HFFFFFF) ' Umesto hexa vrednosti mozes koristiti funkciju RGB([rr], [gg], [bb]) ako ti je lakse da radis tako.
SetMenuInfo GetSubMenu(GetMenu(Me.hWnd), 0), mi
End With
DrawMenuBar Me.hWnd
End Sub
1* Statement block to allow implicit access to fields in a user defined type variable
Syntax
Code:
With user_defined_var
statements
End With
Description
The With...End With block allows the omission of the name of a user defined variable when referring to its fields. It's a shorthand to save typing and avoid cluttering the source. With can also be used with dereferenced pointers, as the second example shows.
Example:
Code:
Type rect_type
x As Single
y As Single
End Type
Dim the_rectangle As rect_type
Dim As Integer temp, t
With the_rectangle
temp = .x
.x = 234 * t + 48 + .y
.y = 321 * t + 2
End With