You are on page 1of 10

Bi 1: Lm quen v i Visual Basic 6

Visual Basic (VB) l mt ngn ng lp trnh (programming language) d hc, d p dng.Chng ti s c gng trnh bi tht n gin,d hiu nhm gip cho qu v c th t hc nhanh chng v hiu qu. i tng m chng ti nhm ti l nhng ngi cha c hay c rt t kin thc cn bn v lp trnh (programming) nhng thch s dng nhng ng dng(application) chy trn windows v mun t mnh vit mt s ng dng hu ch phc v cho cng vic ca mnh. D nhin chng ti khng c tham vng bin qu v thnh nhng lp trnh vin chuyn nghip (professional programmer) m ch hy vng thng qua nhng v d n gin c th gip qu v cm thy hng th vi VB6 ri t tm ti hc hi thm t hon thin kh nng lp trnh ca mnh. By gi chng ta hy bt u bng v d u tin m nhng ngi hc VB thng gi l bi "Hello world". Mi qu v tin hnh tun t cc bc sau: 1.Trn mn hnh windows,qu v click vo menu start, ri chn programs, sau chn Visual Basic 6. Mn hnh VB6 s hin ra vi New project window nm trn. (Nu khng thy new project window xut hin, qu v chn menu File->New project). Project l n v cn bn u tin ca mt chng trnh. 2.Chn Standard EXE, ri click open. Trc mt qu v s xut hin mn hnh nh hnh v d y:

Ct bn tri l tool box (hp ngh) cha mt s controls (ging nh " ngh") gip chng ta thit k (design) giao din (interface) ca mt chng trnh (program). Chnh gia l Form ,cng l mt control, ng vai tr quan trng trong vic to ra giao din vi ngi s dng (user interface).Ct bn phi chia lm hai phn. Phn trn l project window lit k nhng thnh phn to nn mt project, phn di l properties window lit k nhng c tnh (properties) ca mt control. 3.Double click vo label control trn toolbox . Chnh gia form xut hin label1 . Trn properties window double click vo caption , nh vo ch Name. Nm label t gc tri ca form (drag and drop). 4.Double click vo Textbox control trn toolbox . t textbox k bn label.

5.Double click vo Command Button control t command button pha di textbox. Trn properties window double click vo caption , nh vo ch Say Hello. Qu v s thy ch Say Hello trn command button. Nu lm ng qu v s c hnh di y:

6.Double click vo command button, mt window mi hin ra cho php chng ta vit m chng trnh gi l Code window . Qu v nh vo dng lnh sau:(ch nh vo ch m) Private Sub Command1_Click() MsgBox "Hello" & Text1.Text End Sub 7.Nh vy chng ta xong phn thit k giao din v vit m chng trnh. By gi kim tra chng trnh ca chng ta chy nh th no,hy n phm F5 hay click . Window(hay Form) m qu v thit k s hin ra, click vo textbox , xa ch Text1, sau thay bng tn qu v vo v click button Say Hello. Mt window nh (Message Box) hin ra tng t nh hnh v di y:

Tht th v phi khng, hy click OK , sau click ngng chng trnh ang chy.Nu qu v mun lu chng trnh, chn File->Save as, ri t tn theo mnh (v d :myfirstproject). Gii thch: Phn ln cc Controls u c 3 thuc tnh:

Properties : Hnh dng,mu sc , ni chung l nhng c tnh ca mt control, v d : Backcorlor, Appearance...v.v. Methods : Nhng g m control lm c, v d: Move (di chuyn), Refresh (lm ti)... Events : xy ra khi c tc ng ca ngi s dng (user), v d: click, keypress v.v.

Tm li chng ta lm quen vi mt s controls thng dng l label , textbox v command button trong property quan trng ca label l caption ,cn i vi command button l event click() , chng ta phi vit m chng trnh p ng li tc ng click ca ngi s dng.Trong bi ny l hin ra mt thng ip (message) bng cu lnh: MsgBox "Hello" & Text1.Text trong Text1.text l nhng ch m ngi s dng nh vo textbox. V y l bi u tin chng ti thng tin i su vo cc thuc tnh ca controls Mi qu v c tip nhng bi hc ti hiu thm v cc controls.

Bi 2: Tm hi u thm v TextBox v Label Controls


Trong bi 1 qu v lm quen vi Label v TextBox controls.Bi ny chng ti s i su vo mt s Methods v Events thng dng ca 2 controls trn.By gi chng ta hy thit k mt form thng c gi l form Log In cho php ngi s dng nh tn v mt m(Password) vo sau kim tra xem password c ng vi nhng ch c nh trc khng. 1. M mt project mi, Trn Properties Window double click vo caption v nh vo ch Log In. Double Click vo Name v t tn form l frmLogIn. Property Name l tn ca control c s dng trong m chng trnh, cn caption l tn hin ra trn thanh tiu (title bar)ca form. 2.t cc controls vi Properties nh bng1 di y ln form LogIn Control Label Label Label Name LblUserName LblPassword LblDisplay Caption User Name Password Display Text

TextBox TextBox CommandButton CommandButton

TxtUserName TxtPassword CmdOk CmdCancel

"" "" Ok Cancel Bng 1.

Ch thch:

t m: khng c property tng ng. k hiu "": khong trng

3.Sp xp cc controls nh hnh v di y:

4.Click vo TextBox TxtPassword chn Password Character trn Property Window. nh vo du "*"(Asterisk). y l k t thay th s hin ra khi chng ta nh password. 5.Chng ta xong phn thit k giao din.By gi double click vo TextBox TxtUserName hin ra Code Window(hay click vo biu tng View Code trn Project Window).Pha trn Code Window c chia lm 2 phn.Bn tri l danh sch cc Controls, bn phi l danh sch cc Events ca mt control tng ng. Mun vit m chng trnh cho Event no ch cn click vo tn Control v tn Event, sau vit code vo khong gia Private sub .....End sub.nh vo nhng dng sau: Const Pwd = "hello" Private Sub CmdCancel_Click() End End Sub Private Sub CmdOk_Click()

If TxtPassword.Text = Pwd Then MsgBox "Welcome" Else MsgBox "Invalid password" End If End Sub Private Sub TxtUserName_Change() LblDisplay.Caption = TxtUserName.Text End Sub Private Sub TxtUserName_KeyPress(KeyAscii As Integer) If KeyAscii = vbKeyReturn Then TxtPassword.SetFocus End Sub Private Sub TxtUserName_LostFocus() If TxtUserName.Text = "" Then MsgBox "Please enter User Name" End Sub 6. n phm F5 chy chng trnh.Ln lt kim tra cc bc sau:

Cha nh ch vo user name textbox,n phm Tab->hin ra message box nhc ta nh ch vo. nh tn user->LblDisplay s thay i tng ng. Sau n phm Enter->Cursor(con tr) s chuyn sang textbox password. nh password->Ch thy du "*" hin ra Click Ok->hin ra message box cho ta bit password va nh vo l ng hay sai.Password ng l "hello" Click Cancel->dng chng trnh.

Gi i thch: Chng ta s dng 3 Events ca textbox :

_KeyPress(KeyAscii As Integer): s kin xy ra khi c phm c n.Mi k t m chng ta nh vo u c tng ng mt m Ascii(s t 0..255) .Cn Integer l mt loi d liu s hc t -32,768 to 32,767. Chng trnh ca chng ta s kim tra nu (If)phm c n l Enter(VbKeyReturn) th (Then)Cursor s chuyn sang textbox TxtPassword( SetFocus). VbKeyReturn l mt hng s(constant)=13 tng ng vi m Ascii ca phm Enter. Trong SetFocus l mt Method lm cho control nhn c s ch ca chng trnh. (Text) _Change(): s kin xy ra khi ni dung trong textbox b thay i.(nu c hai s kin u xy ra th KeyPress s xy ra trc). Khi ni dung trong text box b thay i th chng ta thay i caption ca LblDisplay tng ng vi ni dung mi. _LostFocus(): Xy ra khi control mt s ch ca chng trnh. Chng trnh chng ta kim tra xem nu ni dung trong textbox rng(null) th hin ra thng ip nhc nh user nh ch vo cng bng cu trc (If...Then...).(Tng t Khi mt control nhn c s ch ca chng trnh th xy ra Event ngc li l GotFocus.)

Khi xy ra Event Click trn CmdCancel th chng ta chm dt chng trnh bng cu lnh End. Cn khi click vo CmdOk th chng trnh kim tra nu password nh vo ging nh Constant(tm dch l hng s, l mt s c gi tr khng i, tht ra trong trng hp ny khng phi l s m l nhng k t c nh trc:Const Pwd = "hello") th hin ra thng ip "Welcome",cn nu khng phi (Else) th hin cu "Invalid Password".Chng ta hon ton c th thay i ch "hello" bng bt k ch no khc m ta thch. Tm li qua bi ny chng ta tm hiu mt s Events v Methods thng dng ca TextBox Control cng l nhng Events v Methods cn bn ca hu ht cc controls khc.Trong bi sau qu v s tm hiu thm mt s control thng dng khc.

Bi 3: Frame, Check Boxes v Option Buttons


Trc tin chng ta hy tm hiu control Frame. 1. M mt project mi, Click vo .Dng Mouse(con chut)v mt hnh ch nht trn Form1,chng ta s thy mt khung hnh ch nht hin ra chnh l Frame. Frame thng c dng gom cc control thnh mt nhm.S d Frame c th lm c nh vy v n l mt container control.Mt control c gi l Container khi n c th cha cc control khc.(V d Form cng l mt container v chng ta c th t cc control khc ln trn mt form). 2. Chng ta th t mt TextBox ln Frame bng cch Click vo TextBox control,v mt hnh ch nht ln trn frame1.Sau khi textbox1 nm trong frame,hy nm frame 1 di chuyn n mt v tr khc trn form.Chng ta thy textbox1 cng di chuyn theo.V khi di chuyn container th " c" bn trong ng nhin b di chuyn theo. 3. By gi t mt TextBox khc(textbox2) ln Form(ch khng phi Frame).Sau nm textbox2 t ln frame1,ri li di chuyn frame1 mt ln na.Chng ta thy textbox2 vn ng yn.iu ny l do khi textbox2 c t ln form1 th container cha n l form khng phi l frame nh trng hp ca textbox1. Tip theo chng ta s tm hiu v CheckBox v Option Button .

Xa cc textbox control, ln lt t 3 Check Boxes ln frame1.t thm mt Frame mi(frame2) ln form,sau t 3 Option Buttons ln frame2.Ln lt thay i Caption v property Alignment ca cc control theo bng di y: Name Frame1 Frame2 Check1 Check2 Check3 Caption Favorites Age Group Classical Music Pop Music Rock Music Right Justify Right Justify Right Justify Alignment

Option1 Option2 Option3

Less than 25 From 25 to 45 More than 45

Left Justify Left Justify Left Justify

Chng ta c form nh hnh v:

Chy th chng trnh v ty click vo cc option.Chng ta thy im khc bit chnh gia CheckBox v Option Button l Cc Option Button c th c gom li thnh mt nhm v ngi s dng ch c chn mt trong nhng Options(ty chn)trong nhm .Ch khng th ng thi chn nhiu option.Khi mt option c chn th cc option khc s t ng khng c chn.V vy control ny cn c gi l Radio Button.Trong khi i vi Check Box chng ta c th cng lc chn nhiu option. C hai u c property Value. Value Property 0 1 2 Status Unchecked Checked Greyed(xm)

Check Box Value Property False True Status Deselected Selected

Option Button trong value bng Greyed s lm cho Check Box chuyn sang mu xm.

Event quan trng ca C hai control l Click.i vi Check Box chng ta c th vit m chng trnh kim tra Value p ng li tc ng click ca ngi s dng.Cn khi click vo Option Button th Value=True. Chng ta ch vic p ng li tc ng click m khng cn kim tra value V d nh hin ra mt thng ip cho bit option no c chn bng cu lnh: Private Sub Option1_Click() MsgBox "you choose classical music" End Sub Khi mun v hiu ha(hay kha) cc control chng ta cho property Enable= False.Ngc li cho Enable=True khi cho php control c s dng tr li. Cc Option Button nn c gom li thnh nhm trong mt Frame v t tn cho nhm thng qua property Caption ca Frame. Nh vy trong bi ny chng ta bit thm mt s control thng dng trong Visual Basic l Frame, Check Box v Option Button.Trong bi sau chng ti s trnh by cc control thng dng khc lin quan n ha (Graphic).Mi qu v xem chi tit bi ti.

Bi 4: h a: PictureBox, Image, Shape v Line controls


I. Gi i Thi u :

ha (Graphics)ng vai tr kh quan trng trong cc ng dng chy trn Window. Cho d ng dng hay c no nu giao din ha (Graphical User Interface) khng "bt mt" th cng kh khuyn khch ngi ta s dng. Visual Basic cho php chng ta to ra cc hnh nh bng 2 cch:

S dng cc graphics controls. y l nhng hnh(shapes) m ta c th t ln form trong lc design nh cc controls khc. S dng cc Graphics Methods v hnh khi ng dng ang chy (on the fly). , Image

Trong bi ny chng ta ch yu tp trung vo cc graphics controls nh PictureBox , Line v Shape controls v mt s graphics methods thng dng.

PictureBox v Image controls trong Visual Basic c dng hin th (display) hnh nh. C hai u c property quan trng l Picture dng xc nh image file no s c hin th. Khi doubleclick vo property Picture trn Properties window, mt Load Picture window s xut hin cho php chng ta chn image file (thuc mt trong cc formats sau: *.BMP, *.WMF, *.GIF, *.JPG, *.ICO). Chng ta hy th tm hiu s khc bit gia hai controls. Image control: L mt lightweight (nh) control (mt s lightweight control khc l Line, Shape v Label control). Mt lightweight control cn t system resource (ti nguyn ca h thng th d nh thi gian v b nh) hn cc controls khc(nh PictureBox, Command Button control...). Ta khng th t Image control ln trn mt control khc tr khi t ln mt container control (nh picturebox, frame). Ngoi ra control ny khng th nhn c focus lc run time.

PictureBox control l: c nhiu chc nng hn Image control. N c th c t bt k ni no. Ngoi ra n cn l mt container control ngha l chng ta c th t cc control khc nhau vo bn trong PictureBox.

II.

Th c Hnh:

M mt Project mi , t mt PictureBox control ln form1. Sau t mt Image control ln trn picturebox1. Double click vo property Picture ca image1. Mt window s hin ra cho php chng ta chn mt image file. (Nu Visual Basic c install y , qu v c th tm cc Image files trong c:\ Microsoft Visual Studio\Common\Graphics\.). Gi s chng ta chn hnh nh hnh1. Sau chng ta c th ty v cc control nh Shape, Line control ln trn form hoc PictureBox. Chng hn trong bi ny v mt hnh Oval nh hnh1 chng ta click vo Shape control, v mt hnh ch nht ln PictureBox. Chn property cho Shape1nh bng sau: Property Shape BackStyle BackColor Value 2-Oval 1-Opaque &H00FF0000&(Blue) Shape1 Properties.

Hnh 1. Nh vy nu mun v cc hnh cn bn nh ng thng, hnh trn, oval, ch nht v.v chng ta c th dng Line v Shape control.ng thi c th thay i properties c c hnh nh . Cn nu mun load mt hnh c sn th dng Image hoc PictureBox control. By gi chng ta hy th thay i khng kh bng cch "play around" vi method PaintPicture ca PictureBox. nh vo nhng dng sau: Dim dragging As Boolean Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) dragging = True End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If dragging Then Picture1.PaintPicture Image1, X, Y End Sub Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) dragging = False End Sub Hy th chy chng trnh. n nt tri chut(Mouse), gi nguyn nh th v ko chut(drag) v mt hnh g chng hn. tht l tuyt vi ! Hnh chng ta ang v c to ra bi Image1. V d chng ti v ch Vovi nh Hnh 2:

Hnh 2.

Gii thch: Chng ta dng bin dragging thuc loi Boolean (True/False) nhn bit user ang ko chut hay khng, khi nt tri chut c n th xy ra event MouseDown i vi picture1. chng ta cho dragging=True. Khi mouse di chuyn th xy ra event MouseMove, ta kim tra nu ng l user ang v th gi method PaintPicture v Image1 ti v tr tng ng. Khi user th nt tri chut ra (MouseUp)th cho dragging=False bo hiu user ngng v.
Tm li trang tr (decorate) mt Form chng ta c th dng cc graphics controls hoc graphics methods. Tuy nhin Image v PictureBox control c cc events nh MouseUp, MouseDown, MouseMove...Trong khi Shape v Line control khng c event, ngha l ch thun ty dng cho vic trang tr.

You might also like