Thủ thuật Visual Basic

22 741 7
Thủ thuật Visual Basic

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Thủ thuật Visual Basic

MC LC Lâm cho Form ln ln hiïån mưåt chưỵ vâ cng mưåt cúä Dng Event nâo àïí update Form? Laâm ta biïët mưåt Form àậ àûúåc Loaded? Lâm mưåt Form giưëng mưåt Form coá sùén Laâm cho Controls biïën mêët Chổn nhiïìu Controls nhû mưåt nhốm Chổn nhiïìu hâng ListBox 'Sort' cấc hâng mưåt Listbox Sùỉp cưåt nhûäng chûä cấc hâng khấc ca Listbox Drag mưåt hâng tûâ Listbox nêìy bỗ vâo Listbox khấc Lâm biïët Drag Source laâ control naâo In nhûäng haâng àûúåc chổn ca mưåt ListBox Bùỉt båc user phẫi click ComboBox àïí chổn mưåt hâng Lâm mưåt Control hiïån trïn moåi trang cuãa Tab Control Sùỉp xïëp thûá tûå cấc TextBox cho Data Entry Laâm cho data vaâo ListBox hay ComboBox Sao khưng thêëy hịnh CommandButton? 10 Laâm àùåt icon lïn Toolbar lâm shortcut cho mưåt menu command cuãa VBIDE? 10 Cấc dẩng ca Ngây vâ Thị giúâ 10 Lâm àổc tûâ mưåt Text file 14 Lâm chûáa vâo mưåt Text file 14 Cấch thûác Log mưåt dûä kiïån vâo mưåt Text file ? 15 Caách thûác àổc/viïët value ca mưåt Variable tûâ mưåt "ini" file ? 17 Àưíi Enter key Tab key 18 Àưíi dẩng MousePointer àưìng hưì cất 19 Kiïëm Help cho caác Functions 19 Duâng Docket Dot Matrix Printer 20 Cho Application möåt Icon 21 VB shorcut Keys 21 Laâm hiïån mưåt Form khấc Giẫ sûã bẩn àang úã Form1 vâ mën lâm cho Form2 hiïån ra, hậy sûã duång: Form2.Show Khi muöën dêëu Form2, duâng: Form2.Hide Khi mưåt Form àûúåc 'Show' lêìn àêìu tiïn, nố àûúåc 'Load' (cho thânh hịnh) vâ 'Show' sau àố Khi mưåt Form àậ cố rưìi, tûác lâ àậ àûúåc 'Load' rưìi, lc bẩn 'Hide' nố cq•ng giưëng nhû kếo mưåt têëm mân che nố lẩi Kïë àố, bẩn 'Show' nố cq•ng giưëng nhû múã mân ra, khưng cố gị ẫnh hỷỳóng Form Baồn coỏ thùớ cho Form biùởn mờởt bựỗng cấch 'Unload' nố, nhû: Unload Form2 Lêìn túái bẩn 'Show' nố, Form sệ àûúåc 'Load' trúã lẩi Mưỵi Form àûúåc 'Load', nố 'execute' sub Form_Load Form_Load lâ núi bẩn viïët cấc 'statements' àïí 'initialise' Form, tûác lâ nhûäng gị cêìn phẫi àûúåc sùỉp xïëp cho sùén sâng trûúác Form thânh hịnh Do àố bẩn phẫi quët àõnh naâo duâng Unload hay Hide àï? Laâm cho Form biùởn mờởt Nhỳỏ rựỗng mửợi Form ỷỳồc 'Load' thũ nố 'initialise' vâ mêët mưåt đt thị giúâ Nïëu bẩn mën lâm cho mưåt Form hiïån vâ khiïën nố dânh nhêån têët cẫ 'keystrokes' vâ 'mouse clicks' thị dng: Form2.Show vbModal Ngay sau Form2 àûúåc 'Show' dûúái daång vbModal, noỏ daõnh CPU process, ùởn ửới statement nựỗm dûúái àố Form1 cq•ng àúåi cho àïën Form2 biùởn mờởt bựỗng Unload hay Hide mỳỏi chaồy tiùởp àûúåc Nïëu bẩn mën Form2 hiïån Modeless (khưng phaói Modal) nhỷng luửn luửn nựỗm trùn Form1, caó Form1 trúã thaânh active, duâng: Form2.Show ,Me ' Me lâ Form1 Lâm cho Form ln ln hiïån mưåt chưỵ vâ cng mưåt cúä Sub Form_Load, dng Move fLeft, fTop, fWidth, fHeight Àïí nhúá thûá tûå cấc parameters Sub Move hậy nhúá tổa àưå cố X,Y Sub Move ta nối àïën võ trđ X,Y ( fLeft, fTop) rưìi cúã X,Y (fWidth, fHeight) Move lâ mưåt method cố thïí àûúåc dng cho Form hay Control vâ rờởt hiùồu quaó Nùởu muửởn Frame1 luửn luửn nựỗm ỳó àónh trấi, dng: Frame1.move 0,0 Nïëu mën chưỵ vâ cúã ca Form 'configurable' (user cố thïí thay àưíi) thị chûáa cấc dûâ kiïån àố Registry rưìi àổc fLeft, fTop, fWidth, fHeight tûâ Registry Sub Form_Load ( xem Function GetSetting ) Àïí cho Form2 hiïån bïn phẫi vâ ngang haâng vúái Form1, trom Sub Form_Load cuãa Form2 duâng: Sub Form_Load() Move Form1.Width, Form1.Top End Sub Duâng Event naâo àïí update Form? Mưỵi trúã lẩi mưåt Form sau lâm viïåc úã mưåt Form khấc, ta mën 'update' mưåt sưë dûä kiïån àang àûúåc 'display' àïí phẫn ẫnh nhûâng thay àưíi vûâa múái xậy Àïí code Sub Form_Activate Lâm ta biïët mưåt Form àậ àûúåc Loaded? Duâng Function sau àêy cuãa Microsoft: Function FormIsLoaded(MyFormName As String) As Boolean ' Determines if a form is loaded Dim i As Integer FormIsLoaded = False For i = To Forms.Count - If Forms(i).FormName = MyFormName Then FormIsLoaded = True Exit Function ' Quit function once form has been found End If Next i End Function Ài qua hïët collection ca Forms àïí xem cố Form nâo truâng tïn Caách duâng: If FormIsLoaded("Form2") then MsgBox "Form2 is already loaded" End If Khửng cho User Unload Form bựỗng cấch click dêëu X Nhiïìu bẩn mën thu xïëp mổi chuån àâng hoâng trûúác Unload mưåt Form nïn bẩn lâm mưåt Exit hay Close button cho user dng Àïí lâm mêët dêëu X phđa àónh phẫi, 'set' Property ControlBox ca Form False Nïëu lâm thïë nêìy cố àiïím bêët lúåi lâ 'minimize' Form, ta khưng thêëy icon ca Form Cố mưåt cấch vêỵn àïí ngun dêëu X, nhûng user click nố thị ta check 'unloadMode' Sub Form_QueryUnload àïí biïët l tẩi Form phẫi unload Trong Sub Form_Unload cố thïí 'assign' Cancel True àïí 'abort' Unload Nïëu bẩn mën khưng cho user minimise Form thị set Property MinButton False Lâm mưåt Form giưëng mưåt Form cố sùén Nhiïìu bẩn mën lâm mưåt Form giưëng giưëng mưåt Form àậ cố sùén Project Thđ d bẩn mën 'duplicate' Form2 àïí lâm nïn mưåt Form3 àïí sau àố sûäa chûäa nố cht àónh Bẩn lâm nhû sau: Múã Form2 Dng Properties àïí àưíi tïn Form2 Form3 Dng File | Save As menu command àïí chûáa Form nêìy dûúái tïn Form3.frm Bêy giúâ bẩn cố thïm Form3 Project, Form2.frm vêỵn côn àố nhûng khưng côn thåc vïì Project nûäa Nïëu bẩn mën cho nố vâo Project trúã lẩi thị dng Project | Ad File menu command àïí chổn Form2.frm bỗ vâo Project Lâm cho Controls biïën mêët Bẩn lâm cho mưåt Control nhû Label, Textbox, ListBox v v biùởn mờởt bựỗng caỏch cho Property 'visible' trúã nïn False, nhû: TxtName.visible = False Duâng TxtName.visible = True àïí lâm Textbox txtName hiïån trúã lẩi Khi mën cho mưåt nhốm Controls biïën mêët hay hiïån cng mưåt lc, chûáa têët cẫ cấc Controls êëy mưåt container nhû Frame hay PctureBox, rưìi chó cêìn lâm cho container êëy visible hay khöng Invisible Control rêët tiïån dng ta dng nố àïí chûáa dûä kiïån Mưåt TextBox tân hịnh cố thïí Databound àïí lùång lệ chûáa data lêëy tûâ mưåt recordField ca current Record cho bẩn duõng Baồn cqãng coỏ thùớ 'assign' (cho noỏ bựỗng) mửồt value vâo mưåt Control tân hịnh Nïëu Control êëy Databound, value sệ àûúåc viïët vâo database àng lc Chổn nhiïìu Controls nhû mưåt nhốm Chổn nhiïìu Controls rêët tiïån cho viïåc assign mưåt property cho cẫ nhốm qua Properties Window Àïí chổn nhiïìu Controls nhû mưåt nhốm bẩn cố thùớ 'rubber band' (quờởn dờy thun) caó nhoỏm bựỗng caỏch 'drag' trỗ thânh mưåt hịnh chûâ nhêåt bao cẫ nhoỏm laồi Nùởu caỏc Controls ờởy nựỗm mửồt container nhû Frame hay Picture box, trûúác hïët bẩn phẫi 'click' Form rưìi kïë àố àê nt 'Ctrl' xëng 'rubber band' nhû nối trïn Mưåt cấc Controls mưåt nhốm àậ àûúåc chổn rưìi ta cố thïí dng menu Format command àïí Align (ngang hâng) chng hay lâm cho chng cng cúã Chổn nhiïìu hâng ListBox Mën cho user chổn nhiïìu hâng Listbox ta phẫi set Property Multiselct cuãa Listbox Extended Sau àoá user coá thùớ choồn nhiùỡu haõng bựỗng caỏch bờởm nuỏt Shift hay Ctrl Click nhûäng haâng Nhúá laâ nïëu bêëm nt Shift thị chổn nhûäng hâng liïn tc giûäa hai cấi click, côn bêëm nt Ctrl thị chổn hay khưng chổn thïm tûâng hâng mưåt Mưỵi hâng Listbox List1 àûúåc cho thûá tûå tûâ àïën List1.ListCount-1 Khi haâng i àûúåc selected thị List1.Selected(i) = True Mën 'deselect' (khưng chổn) hâng àố thị dng List1.Selected(i) = False 'Sort' cấc hâng mưåt Listbox Nïëu ta mën nhûäng hâng mưåt Listbox àûúåc sorted theo mêỵu tûå (alphabetical order) thị thiïët kïë (at design time) set Property Sorted cuãa Listbox True Trong xûã lyá ta khöng thay àưíi value ca Property Sorted àûúåc Nïëu mưåt Listbox àậ lúä cố Property Sorted = False mâ ta mën Sort nố xûã l thị lâm sao? Bẩn àùåt thïm lïn Form mưåt Listbox khấc Listbox nêìy cố Property Sorted = True Khi nâo mën Sort cấc hâng Listbox thûá nhêët ta lâm nhû sao: Chếp têët cẫ mổi hâng tûâ Listbox thûá nhêët qua Listbox thûá nhị, cấc hâng sệ àûúåc sorted tûå àưng Listbox thûá nhị Clear Listbox thûá nhêët Chếp mổi hâng tûâ Listbox thûá nhị qua Listbox thûá nhêët Nhúá ỷõng cho user thờởy Listbox thỷỏ nhũ bựỗng caỏch set Property Visible ca nố False (tân hịnh) Lûu Clear mưåt Listbox trûúác cho mưåt sưë hâng múái vaõo vaõ khửng muửởn giỷọ nhỷọng haõng cqã bựỗng caỏch dng method Clear nhû List1.Clear Sùỉp cưåt nhûäng chûä cấc hâng khấc ca Listbox Nïëu mën têët cẫ cấc chûä cưåt thûá ca cấc hâng mưåt Listbox àûáng thùèng hâng chiïìu cao (vertically) bẩn cố thïí set Font ca Listbox Courier, mưåt lổai Fixed Font Têët cẫ cấc chûä ca Fixed Font nhû Courier àïìu cố cq•ng chiïìu rưång (character width) Ngûúåc lẩi mưåt Proportional spacing Font nhû "MS Sans Serif" chiïìu rưång ca chûâ 'đ nhỗ hún ca chûâ 'm' Nïëu bẩn mën dng Tab Listbox thị phẫi gổi mưåt API Function àïí lâm cho Listbox chõu nhêån Tab (support Tab feature) Sùỉp cưåt nhûäng chûä cấc hâng khấc ca Listbox Nïëu mën têët cẫ cấc chûä cưåt thûá ca cấc hâng mưåt Listbox àûáng thùèng hâng chiïìu cao (vertically) bẩn cố thïí set Font ca Listbox Courier, mưåt lổai Fixed Font Têët cẫ cấc chûä ca Fixed Font nhû Courier àïìu cố cq•ng chiïìu rưång (character width) Ngûúåc lẩi mưåt Proportional spacing Font nhû "MS Sans Serif" chiïìu rưång ca chûâ 'đ nhỗ hún ca chûâ 'm' Nïëu bẩn mën dng Tab Listbox thị phẫi gổi mưåt API Function àïí lâm cho Listbox chõu nhêån Tab (support Tab feature) Drag mưåt hâng tûâ Listbox nêìy bỗ vâo Listbox khấc Giẫ sûã bẩn mën Drag mưåt hâng tûâ List1 bỗ vâo List2 vâ display nố úã cëi List2 Ta sệ dng Mousedown Event ca List1 mâ Drag Khi bùỉt àêìu Drag ta mën MousePointer àưíi hịnh mưåt trang giêëy Do àố ta phẫi Browse directory àïí cho vâo Property DragIcon ca List1 tïn mưåt Icon File Bẩn cố thïí vâo Folder C:Program File\Microsoft Visual Studio\Common\Graphics\IconsDragDrop lïí chổn mưåt Icon File Private Sub List1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) List1.Drag ' Bùỉt àêìu drag End Sub Private Sub List2_DragDrop(Source As Control, X As Single, Y As Single) ' Source úã àêy lâ List1 List2.AddItem Source.Text ' Bỗ hâng tûâ List1 vư cëi List2 Source.RemoveItem Source.ListIndex ' Lêëy hâng khỗi List1 List2.Listindex = List2.Listcount-1 ' Hilight hâng cëi vâ lâm cho nố àûúåc display End Sub Lâm biïët Drag Source lâ control nâo Ta cố thïí dng Function Typename nhû: TypeName(Source) àïí xem nố lâ "ListBox" hay "TextBox" etc hay duâng TypeOf nhû: If TypeOf Source Is ListBox Then Msgbox " Drag source is a ListBox" End If Ta cq•ng cố thïí dng Name ca Source nhû: If Source.Name = "List1" thenMsgBox "Drag source is List1" End If Ngoâi ta cq•ng cố thïí dng Property Tag ca Source Control àïí chûáa mưåt biïåt danh vâ duâng giöëng nhû tïn cuãa Drag Source nhû: If Source.Tag = "MYLIST1" then MsgBox "Tag of Drag Source is: " & Source.Tag End If In nhûäng hâng àûúåc chổn ca mưåt ListBox Ta dng Printer Object Rấp têët cẫ nhûäng hâng àûúåc chổn lẩi thânh mưåt text string dâi, thïm vâo cëi mưỵi hâng lâ Carriage Return / LineFeed ( vbCrLf ) Dim i strOut = "" ' Initialise Output string khưng cố gị cẫ For i=0 to List1.Listcount-1 If List1.Selected(i) then strOut = strOut & List1.List(i) & vbCrLf End if Next Printer.Print strOut ' Gúãi text String Printer Printer.EndDoc ' Bùỉt àêìu in Nïëu bẩn mën in tûâng hâng thị dng: Printer.Print List1.List(i) ' Khưng cêìn phẫi dng vbVrLf Mën in chûä àêåm thị múã BOLD lùn bựỗng: Printer.FontBold = True vaõ naõo muửởn tựổt chûä àêåm thị dng: Printer.FontBold = False Bùỉt båc user phẫi click ComboBox àïí chổn mưåt hâng Khi Form múái hiùồn ra, nùởu aọ coỏ sựộn mửồt haõng chỷọ nựỗm ComboBox, mâ àố àng lâ hâng user mën dng, ta khưng cố dõp àïí dng Event Click ca ComboBox àïí lâm chuån gị ty thåc vâo hâng mâ user àậ chổn Mưåt mấnh lúái lâ trûúác cho cấc hâng vâo ComboBox ta àïí mưåt hâng trưëng, thđ d nhû: Combo1.AddItem " " ComboBox sệ nhû trưëng khưng Form múái hiïån ra, bùỉt båc user phẫi chổn mưåt hâng chúá khưng dng hâng àêìu 'by default' (tûå àưång cố nïëu khưng lâm gị) Lâm mưåt Control hiïån trïn mổi trang ca Tab Control Mưỵi trang ca Tab Control chûáa riïng nhûäng Control ca nố Nïëu bẩn mën mưåt Textbox, Listbox hay CommandButton hiïån trïn mổi trang ca Tab, bẩn tẩo control àố bïn ngoâi Tab vâ keỏo noỏ vaõo ựồt lùn trùn Tab Nùởy Control nựỗm phña dûúái Tab, duâng VBIDE menu Comand "Format | Order | Bring to Front" àïí mang Control phđa trûúác Sùỉp xïëp thûá tûå cấc TextBox cho Data Entry Khi user àiïìn cấc dûä kiïån vâo mưåt Form (Data Entry), user rỳõi mửợi TextBox bựỗng caỏch bờởm nuỏt Tab Kùở àố MouseCursor nhẫy àïën TextBox cố Property TabIndex value theo thûá tûå sau TabIndex value cuãa TextBox vûâa rúâi khoãi Thûúâng thûúâng ta cho TabIndex value theo thûá tûå tûâng cùåp LblName, txtName rưìi lblAddress, txtAddress, v.v cố TabIndex values thñ duå nhû 1,2,3,4 Khi txtName (TabIndex=2) mêët Focus, mouseCursor dúâi àïën lblAddress (TabIndex=3) , nhûng vị lblAddress lâ mưåt Label nïn khưng chûáa mouseCursor àûúåc, àố mouseCursor nhẫy àïën txtAddress (TabIndex=4) Nïëu Caption ca lblAddress cố mưåt character underlined, nhû lblAddress.Caption = "Add&ess" ' character "e" underlined user bêëm Alt+e bêët cûá lc nâo mousePointer sệ nhẫy àïën lblAddress nhûng rưët cåc rúát vâo TextBox kïë àố, tûác lâ txtAddress trûúâng húåp nêìy Nïëu bẩn khưng mën mousePointer àấp vâo mưåt TextBox nâo set Property TabStop ca nố False Bẩn cq•ng cố thïí khưng cho user thay ửới dỷọ kiùồn ỳó mửồt TextBox bựỗng caỏch set Property Enabled False hay Locked True Laâm cho data vaâo ListBox hay ComboBox Khi Design ta cố thïí dng Property List ca ListBox hay ComboBox àïí àấnh vâo cấc dông data Mưỵi xëng hâng phẫi nhúá dng Ctrl+Enter chúá khưng phẫi Enter, nïëu khưng VBIDE tûúãng lâ bẩn àậ chêëm dûát data entry Mưåt cấch khấc àïí cho data vâo ListBox hay ComboBox lâ duâng Method AddItem Sub Form_Load, nhû: Sub Form_Load() Dim i For i=1 to 10 List1.AddItem "Line " & CStr(i) Next lstState.AddItem "NSW" lstState.AddItem "VIC" lstState.AddItem "QLD" lstState.AddItem "SA" lstState.AddItem "WA" lstState.AddItem "TAS" End Sub Sao khưng thêëy hịnh CommandButton? Bẩn dng Properties Window àïí àùåt mưåt Picture vâo mửồt CommandButton bựỗng caỏch Browse vaõ choồn mửồt Image File Nhûng bẩn khưng thêëy Picture àêu cẫ Bẩn côn cêìn phẫi set Propety Style ca CommandButton "Graphical", thay vị "Standard" Laâm àùåt icon lïn Toolbar laâm shortcut cho möåt menu command cuãa VBIDE? Duâng Menu command View | Toolbars | Customize àïí display Dialog Customize Kïë àố chổn Tag Commands, bïn trấi sệ lâ mưåt Listbox chûáa danh sấch cấc Categories vâ bïn phẫi lâ nhûäng Commands thåc vïì Category àang àûúåc highlighted Thûã select tûâng Category àïí tịm Listbox bïn phẫi cấi Command cố icon mâ bẩn mën Drag icon àố lïn Toolbar Nhên dõp nêìy bẩn cố thïí bỗ mưåt icon cố sùén trïn Toolbar bựỗng caỏch Drag noỏ chửợ khaỏc Caỏc daồng cuóa Ngây vâ Thị giúâ Dng Function Format àïí lêëy ngây giúâ theo dẩng bẩn mën Thđ d: strToday = Format (Now(), "ddd dd-mmm-yyyy hh:nn:ss") • Now() cho ta hiïån giúâ (realtime lêëy tûâ àưìng hưì ca CPU) • ddd cho Mon, Tue vv • mmm cho Jul, Feb vv Nhúá duâng "nn" cho phuát Hai caách duâng Timer Timer coỏ Interval tủnh bựỗng milliseconds Khi Timer1 ỷỳồc Enabled (tỷỏc lâ Timer1.Enabled=True) nố sệ chẩy Sub Timer1_Timer mưỵi Interval msecs Thđ d ta mën Label1 chúáp tùỉt (blink): Timer1.Interval = 500 ' Nûäa giêy Timer1.Enabled = True ' Bùỉt àêìu chaåy Timer1 cho hïët interval Sub Timer1_Timer() Label1.Visible = NOT Label1.Visible End Sub Cûá mưỵi nûäa giêy hïí Label1 àang hiïån thị cho nố tân hịnh vâ ngûúåc lẩi Khi nâo mën ngûng chúáp tùỉt thị dng: Timer1.Enabled = False Label1.Visible = True Àïílâm mưåt viïåc tûúng lai, ta cq•ng duâng Timer nhûng Sub Timer1_Timer ta àïí cêu Timer1.Enabled = False àïí tùỉt Timer1 sau lâm xong cưng chuån Thđ d: Sub Timer1_Timer() Timer1.Enabled = False ' Ngûng Timer1 ' Àïí code lâm cưng chuån tẩi àêy End Sub Àúåi mưåt cht Cố úã giûâa code bẩn mën àúåi (wait) mưåt cht Bẩn cố thïí lâm theo bâi mêỵu ca Microsoft nhû sau: Dim PauseTime, Start, Finish, TotalTime ' Code àang laâm viïåc nûäa chûâng PauseTime = ' Set duration in seconds Start = Timer 'Set start time as now Finish = Start + PauseTime ' set finish time Do While timer < Finish DoEvents ' Yield to other processes Loop ' Code tiïëp tuåc cöng viïåc Timer duâng úã àêy lâ mưåt Function cố sùén (in-built) ca VB chúá khưng phẫi Control Timer Timer cho ta sưë giêy kïí tûâ nûâa àïm Ta dng DoEvents àïí khỗi dânh hïët CPU time mưåt closed Do While Loop Nố nhûúâng cho cấc process khấc chẩy chúâ àúåi Finish Khi bẩn chẩy mưåt Closed Loop giưëng nhû trïn vâ assign cho Label1 mưåt Caption vúái value biïën àưíi àïí Feedback cho user biïët tịnh hịnh diïỵn tiïën àïën àêu, nïëu bẩn khưng dng DoEvents giưëng nhû nối trïn, Label1 sệ khưng cố dõp 'refresh' àïí 'display' value múái ca Label1.Caption Khưng biïët bẩn cố àïí thêëy cấch chúâ àúåi nhû trïn cố thïí gùåp trúã ngẩi nïëu lc bêëy giúâ lâ gêìn àïën nûâa àïm đt hún giêy Khi àố Finish sệ lúán hún 3600*24 giêy vâ Timer sệ khưng bao giúâ àẩt àïën sưë êëy àïí nhẫy khỗi Loop Giưëng nhû mịnh lêåp gia àịnh vêåy, sệ lâm mổi sët àúâi, khưng cố lưëi thoất Mưåt cấch khấc àïí giẫi quët lâ ta nhúâ mưåt Timer1 chẩy àưåc lêåp àïí cho biïët nâo thúâi gian aọ traói qua (elapsed) bựỗng caỏch set mửồt 'variable' tïn blnElapsed True blnElapsed phẫi àûúåc àïí phêìn General Declaration àïí cẫ code chđnh vâ Sub Timer1_Timer àïìu thêëy noá Dim blnElapsed as Boolean ' Declare in General section Sub Timer1_Timer() Timer1.Enabled = False blnElapse = True End Sub ' Code àang laâm viïåc nûäa chûâng blnElapsed = False Timer1.Interval = 5000 ' Set duration in msecs Timer1.Enabled = True 'Start Timer1 Do DoEvents ' Yield to other processes Loop Until blnElapsed ' Code tiïëp tuåc cöng viïåc Caỏch nờỡy cqãng ỷỳồc nhỷng noỏ vờợn bựổt cheồt (hold up) CPU vâ lâm cẫn trúã cấc processes khấc(àêy lâ giúái hẩn ca VB) Cấch hoân hẫo nhêët lâ ta ỳồi bựỗng caỏch duõng Timer1, nhỷng ựồt phờỡn code coõn lẩi àïí tiïëp tc cưng viïåc Sub Timer1_Timer ' Code àang laâm viïåc nûäa chûâng Timer1.Interval = 5000 ' Set duration in milliseconds Timer1.Enabled = True 'Start Timer1 Sub Timer1_Timer() Timer1.Enabled = False ' Code tiïëp tuåc cöng viïåc End Sub Lâm thng rấc chấy lûãa nûäa giêy Trong xûã l, ta cố thïí biïën hịnh ca mửồt Image bựỗng caỏch cho noỏ mửồt Picture mỳỏi nhỷ: Image1.Picture = LoadPicture("PictureName.bmp") rưìi bùỉt àêìu mưåt Timer vúái Interval bựỗng 500 milliseconds ờỡu tiùn ựồt mửồt Timer tùn Timer1 lùn Form Vũ luỏc ờỡu Timer1.Interval bựỗng nùn Timer1 chûa chẩy àûúåc (giưëng nhû Enabled = False) ' Cho hịnh thng rấc chấy lûãa Image1.Picture = LoadPicture("TrashBinOnFire.bmp") Timer1.Interval = 500 Timer1.Enabled = True ' Nûäa giêy sau sệ chẩy Timer1_Timer Sub Timer1_Timer() Timer1.Enabled =False ' Ngûng Timer1 ' Cho hịnh thng rấc thûúâng Image1.Picture = LoadPicture("TrashBin.bmp") End Sub Lâm àổc tûâ mưåt Text file Sau àêy lâ mưåt thủ duồ oồc data tỷõ mửồt Textfile tùn "Friends.txt" nựỗm cuâng folder vúái chûúng trònh àang xûã lyá Sub Form_Load() Dim strALine as string Dim strLocalFolder as string Dim strFullPathFileName as string strLocalFolder = App.path If Right(strLocalFolder,1) "\" then strLocalFolder = strLocalFolder & "\" End If strFullPathFileName = strLocalFolder & "Friends.txt" Open strFullPathFileName for input as #1 lstFriend.Clear ' Clear ListBox lstFriend Do While Not EOF(1) ' Read till End-Of-File Line Input #1, strALine ' Read a line lstFriend.AddItem strALine 'Add that line to ListBox Loop Close #1 ' Close the file End Sub Laâm chûáa vaâo mưåt Text file Sau àêy lâ mưåt thđ d àổc data tỷõ mửồt Textfile tùn "Friends.txt" nựỗm cuõng folder vúái chûúng trònh àang xûã lyá Sub Form_Load() Dim i Dim strLocalFolder as string Dim strFullPathFileName as string strLocalFolder = App.path If Right(strLocalFolder,1) "\" then strLocalFolder = strLocalFolder & "\" End If strFullPathFileName = strLocalFolder & "Friends.txt" Open strFullPathFileName for output as #2 For i=0 to lstFriend.Listcount-1 Print #2, lstFriend.List(i) Next Close #2 ' Close the file End Sub Cấch thûác Log mưåt dûä kiïån vâo mưåt Text file ? Nhiïìu lc ta cêìn Log vâo mưåt LogFile cấc biïën cưë xậy nhu liïåu àang chẩy àïí sau nêìy kiïím lẩi tịnh hịnh Sub LogEvent(ByVal GivenFileName, ByVal msg As String, HasFolder As Boolean, IncludeTimeDate As Integer) ' Append event message Msg to a text Logfile GivenFileName ' If GivenFileName is fullPathName then HasFolder is true ' IncludeTimeDate = : No Time or Date ' = : Prefix with Time ' = : Prefix with Time and Date Dim FileNo, LogFileName, theFolder If HasFolder Then LogFileName = GivenFileName Else If Right(App.Path, 1) "\" Then theFolder = App.Path & "\" Else theFolder = App.Path End If LogFileName = theFolder & GivenFileName End If FileNo = FreeFile If Dir(LogFileName) "" Then Open LogFileName For Append As FileNo Else Open LogFileName For Output As FileNo End If Select Case IncludeTimeDate Case ' No Time or Date Print #FileNo, Msg Case ' Time only Print #FileNo, Format(Now, "hh:nn:ss ") & Msg Case ' Date & Time Print #FileNo, Format(Now, "dd/mm/yyyy hh:nn:ss ") & Msg End Select Close FileNo End Sub Coi chûâng trûúâng húåp LogEvent àûúåc gổi búãi hai Sub khấc cng mưåt lc Khi Sub thûá nhị mën múã LogFileName thị bõ error vị LogFileName àậ bõ Sub thûá nhêët múã rưìi Trong trûúâng húåp àố ta cố thïí sûäa LogEvent lẩi cho nố AddItem Msg vâo mưåt Listbox rưìi giao nhiïåm vuå viïët xuöëng File cho möåt Process chuyïn viïn thûá ba Cấch thûác àổc/viïët value ca mưåt Variable tûâ mưåt "ini" file ? Cố ta mën àổc value ca mưåt variable chûáa mưåt file cố extension laõ "ini" (coõn goồi laõ configuration file) nựỗm folder C:Windows hay c:WinNT Trong file nờỡy nhỷọng cựồp variable=value nựỗm cấc sections, mưỵi Section header cố dẩng nhû [System Var] Thđ d "protocol.ini" chûáa nhûäng dông sau: [ndishlp$]

Ngày đăng: 17/08/2012, 09:11

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan