Form và các Controls thông thường trong VB6

11 1.2K 4
Form và các Controls thông thường trong VB6

Đ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

Form và các Controls thông thường trong VB6

Chương Ba - Form Controls thông thường Hầu hết chương trình VB6 có Form Khi ta chạy chương trình, Form nầy trước hết để ta lệnh làm chuyện Cái Form trống khơng chả làm nhiều, nên ta đặt lên Form controls Textbox(hộp để đánh chữ vào), Label(nhãn), Commandbutton(nút bấm mệnh lệnh), v.v Các controls cho ta enter kiện để chương trình dùng xử lý, controls hiển thị (display) kết cho xem Sắp đặt controls lên Form Ta bắt đầu thiết kế chương trình (New Project) cách chọn Standard EXE, môi trường triển khai lập trình (IDE) cho bạn sẵn Form tên Form1 Muốn đặt Control lên Form, click hình Control Toolbox Drag (bấm nút trái chuột kéo cho thành hình chữ nhật trước buông nút trái ra) chuột Form vẽ thành cở Control Một cách khác để đặt control lên Form doubleclick Control Toolbox, hình control Form Kế bạn dời control đến chỗ muốn resize Nếu lúc bạn khơng thấy Túi đồ nghề (Toolbox) nằm bên trái, bạn dùng mệnh lệnh Menu View|Toolbox để bắt Có cách khác click lên toolbox icon toolbar VB6 Nên nhớ Toolbox window window khác Khi lên bạn nắm (bấm nút trái chuột giữ khơng bng ra) title để dời nơi khác Bạn đóng cách click lên dấu x góc phải phía Nếu right click Toolbox, display context sensitive menu, có property dockable (có thể đậu bến) Nếu window dockable, sau bạn dời khỏi vi trí docked bình thường nó, bạn dock lại củ cách double click lên title Resize di chuyển control Khi bạn select control (click lên nó), chung quanh control resize handle, nút đen dọc theo chu vi control Click lên nút đen resize handle, bạn resize control Có cách khác để resize control dùng Shift + ArrowKey Bấm nút Shift bấm arrow key, control lớn hay thu hẹp theo chiều ArrowKey Lưu ý: Một số control có kích thước tối thiểu, bạn khơng thể làm cho nhỏ Thí dụ Combobox, phải cao đủ để display hàng text Tương tự thế, bấm nút Ctrl bấm arrow key, control di chuyển theo chiều ArrowKey Ngoài ra, nên nhớ lúc chương trình chạy (at run-time), code ta thay đổi kích thước vị trí controls dễ dàng, chí làm cho chúng hay biến cách sửa đổi value property left, top, width, height visible controls Alignment Grid Để giúp bạn đặt ngắn controls form, VB6 cho bạn Alignment Grid Nó dấu đen hàng dọc xi form Bạn làm cho dấu đen grid form biến cách dùng menu command Tools | Options để display Option Dialog, kế chọn Tag General clear checkbox "Show Grid": Bạn nầy thay đổi khoảng cách chiều rộng (Width) chiều cao (Height) chấm đen grid Kích thước nhỏ Width hay Height 24 Hãy so sánh hai trường hợp form có khơng có Show Grid đây: Control Locking Một bạn đặt kích thước vị trí control form rồi, dễ ta tình cờ thay đổi đặc tính vơ ý click lên control Do VB6 cho ta Menu command Format | Lock Controls để khóa chúng lại Sau khóa, hình ống khóa menu bị chìm xuống Nếu sau nầy bạn muốn thay đổi kích thước vị trí chúng nhớ dùng Menu command Format | Lock Controls lại Sau mở khóa, hình ống khóa menu bình thường Cài đặt Properties Form Nhiều property form ảnh hưởng đến diện mạo vật lý (physical appearance) Property Caption định text hiểu thị title Nếu Property BorderStyle form khơng phải Sizable User khơng thể resize form at run-time Property Icon định hình icon đuợc dùng title form, form thu nhỏ (minimized) Nếu bạn không muốn cho phép User minimize hay maximize form set value property MinButton, MaxButton False Nếu property ControlBox False form khơng có nút minize, maximize hay close (x) góc phải nó, đồng thời form khơng display icon bên góc trái title hình đây: Vị trí (top,left) form thay đổi design time cách di chuyển hình nhỏ window Form Layout: Property WindowState xác định Form có kích thước bình thường (normal=0), hay minimized (=1), maximized =(2) Lưu ý property Font Form control nằm thừa kế Tức bạn đặt control lên form, property Font control tự động trở nên giống y form Vài Event thông dụng Form Nhìn từ phương diện, Form giống Control Ta instantiate form nhiều lần để có nhiều form tương tợ Trong thí dụ đây, ta instantiate Form2 hai lần để có MyForm YourForm: Private Sub CmdCreateForms_Click() Dim MyForm, YourForm Set MyForm = New Form2 MyForm.Caption = "This is My Form" MyForm.Show MyForm.Move 1000, 1000 Set YourForm = New Form2 YourForm.Caption = "YOUR FORM IS HERE" YourForm.Show YourForm.Move 2000, 2000 End Sub Một Form có nhiều Events hữu dụng Form_Initialize: Event nầy xãy trước lần ta instantiate form Ta dùng Form_Initialize event để thực cần phải làm chung cho tất instances form nầy • Form_Load: Event nầy xãy lần ta instantiate form Nếu ta dùng instance form chương trình Form_Load coi tương đương với Form_Initialize Ta dùng Form_Load event để initialise variables, controls v.v cho instance nầy Bên Form_Load bạn dùng Setfocus cho control form form chưa hẳn thành hình (ra đời) Muốn làm việc bạn phải delay (trì hoản) chút xíu cách dùng Control Timer để đợi cho Form_Load hoàn tất Thí dụ: • Private Sub Form_Load() Timer1.Interval = 500 Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Timer1.Enabled = False ' Timer1_Timer only execute once txtName.Setfocus ' Make Tab Cursor start at TextBox txtName End Sub Form_Activate: Mỗi lần form trở nên active (current) generate Activate event Ta dùng event nầy để refresh display form • Form_QueryUnload: Khi User click dấu x phía bên phải để close form generate QueryUnload event Syntax Sub nầy đây: • Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) End Sub Event nầy cho ta dịp để cancel Close action form (tức không cho User close form) cách set Cancel UnloadMode cho ta biết ai, task hay form muốn close form nầy Ngoài ra, bạn nên biết form tự động Load hay trở nên active bạn nhắc đến nó, thí dụ dùng Form2.List1 Khi form loaded bạn hide (làm cho biến mất) Kế đó, bạn show form trở lại form khơng có thay đổi Nhưng bạn Unload form (thí dụ cách dùng Unload Form2 ), sau load trở lại cách dùng Form2.Show chẳng hạn, Form phải trải qua trình Form_Load, dĩ nhiên form tất có trước Ngoài ra, Hide/Show form loaded nhanh, cịn Unload/Load thì Khi bạn Show Form chưa hữu form loaded show Đôi bạn muốn Load form, làm việc với trước Show, trường hợp bạn dùng Load Form2 chập sau dùng Form2.Show MDI Form Đôi bạn muốn có MDI form, tức form chứa nhiều form bên Dạng MDIform nầy thường dùng application wordprocessor để mở nhiều document lúc, document hiển thị form Để có MDIForm bạn cần phải dùng menu command Project | Add MDI Form Mỗi VB6 project có tối đa MDIform Muốn form trở thành form bạn set property MDI Child thành True At run-time bạn khơng thể hide (biến thành invisible) MDIChild form, minimize Nếu bạn thật muốn hide phải dùng mánh lới cho vị trí (top,left) số âm lớn kích thước để nằm ngồi tầm hiển thị form Trong chương trình dùng MDI Form, bạn click MDI Form khơng nhảy phía trước che form con, luôn nằm Controls gì? Controls vừa có hình, vừa có code chạy bên window nho nhỏ, giống form Khi ta lập trình VB6 ta lấp ráp controls (là vật dụng tiền chế) hay nhiều form để có chương trình nhanh chóng Ta giao dịch với control qua ba đặc tính control: Properties: tập hợp đặc tính control mà ta ấn định lúc design time hay run-time Có nhiều properties diện mạo, ta thay đổi at design time thấy kết lập tức, thí dụ Font hay màu sắc • Methods: control thực đuợc, tức khả • Events: cố mà control thơng báo cho biết xãy với control Khi event xãy VB6 xử lý Event Handler (thí dụ Sub Command1_Click()), miễn viết code sẵn Nếu khơng có code coi khơng thèm biết đến event loại Có số Events mà thường xử lý là: o Click : xãy user click lên control Ta thường dùng cho CommandButton Listbox o MouseDown, MouseUp : User bấm mouse button có MouseDown Event, User bng có MouseUp Event Ta thường dùng MouseDown Event để Popup context sensitive menu hay bắt đầu diễn biến Drag Thí dụ: • Private Sub Foods_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = vbRightButton Then ' if Right button was pressed PopupMenu mnuActions ' popup a menu End If End Sub Private Sub DrinkList_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) DrinkList.drag ' Displaying a drag icon to start the drag process End Sub Để ý Click không cho thêm chi tiết cố, MouseDown/MouseUp cho ta biết vị trí cursor, button Mouse bấm lúc User có bấm nút Shift, Ctrl hay Alt không Mỗi Click đôi với cặp MouseDown/MouseUp Nếu bạn muốn xử lý vừa Click lẫn MouseDown phải cẩn thận Thí dụ bạn muốn vừa handle Click event vừa handle Mouse Drag phải phân biệt hai trường hợp Nếu không User muốn thấy kết Click mà lại thấy control bắt đầu display Drag icon bực KeyPress : xãy user Press key Ta thường dùng cho TextBox để loại (filter out) keystrokes ta không chấp nhận KeyPress cho ta ASCII value, số có giá trị từ đến 255, key Trong thí dụ đây, Enter key coi TAB key: o Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then KeyAscii = ' Swallow the character to avoid side effect SendKeys "{TAB}" ' Emulate entering a TAB End If End Sub KeyDown, KeyUp : KeyPress event cho ta cặp KeyDown/KeyUp event KeyDown/KeyUp cho ta KeyCode Shift value Để detect Function key ta cần dùng KeyDown event Trong thí dụ đây, ta display Function key User bấm: o Private Sub Text3_KeyDown(KeyCode As Integer, Shift As Integer) If (KeyCode >= 112) And (KeyCode Then ' If found, Text1.SelStart = Where - ' set selection start and Text1.SelLength = Len(Search) ' set selection length Else MsgBox "String not found." ' Notify user End If End Sub CommandButton CommandButton tiện cho ta dùng vào việc xử lý chuyện User click lên button Event ta dùng thường cho CommanButton Click Ta dùng Property Caption CommandButton để enter ta muốn display button Nếu muốn cho phép User dùng ALT+E (đè nút Atl lúc bấm nút E) để generate event click nhét dấu "&" trước chữ E Caption button Caption display chữ E với gạch Ngoài ta cho thêm hình vào CommandButton cách chọn icon cho property Picture set Property Style Graphical, thay Standard Lúc Run-time bạn thay đổi hình hay Caption CommandButton Trong thí dụ đây, Caption CommandButton CmdOperation flip-flop hai values Stop Start: Private Sub CmdOperation_Click() If CmdOperation.Caption = "&Stop" Then CmdOperation.Caption = "St&art" Else CmdOperation.Caption = "&Stop" End If End Sub Label Mục đích Label để display, không cho User Edit Textbox Do ta dùng Property Font, ForeColor Backcolor để làm cho đẹp Ngồi Property BorderStyle cho Label lỏm xuống bạn set Fixed Single Nếu set property BackStyle Transparent tránh trường hợp Backcolor Label làm cho không đẹp Label có Property Tabindex Nếu bạn muốn dùng ALT key để mang Tab Cursor Textbox, để Label với TabIndex TabIndex TextBox trừ Giả sử Label có Caption "&Address" ALT+A mang Tab Cursor TextBox màu vàng thí dụ đây: Ngồi nhớ bạn thay đổi Caption Label lúc run-time CheckBox CheckBox dùng để User xác nhận có đặc tính cách nhanh chóng Property Value CheckBox Checked (làm cho hộp vng có dấu, 1), Unchecked (làm cho hộp vuông trống không, 0) hay Grayed (làm cho hộp vng có dấu màu nhạt, 2) Một biết CheckBox có Value 1, ta đọc Caption CheckBox để dùng cần 10 Bạn dùng Property Alignment để làm cho Caption đứng bên phải (Left Justify) hay bên trái (Right Justify) hộp vng OptionButton OptionButton ( cịn gọi RadioButton) có hình trịn với chấm giữa, thay hình vng với gạch CheckBox OptionButton ln ln qui tụ thành nhóm, chứa container Container Control có khả chứa controls khác Frame, PictureBox, hay Form Container Sau đặt Container lên Form, muốn để OptionButton lên Container, trước hết ta phải Select container, kế chọn OptionButton Sở dĩ, tất OptionButtons phải nằm container lúc nào, nhiều OptionButton container có value True (vịng trịn có chấm giữa) Muốn biết OptionButton có thật nằm container, bạn thử kéo container chỗ khác Nếu OptionButton bị dời theo container nằm container Một cách khác thử kéo OptionButton khỏi container Nếu kéo khơng nằm container Muốn di chuyển OptionButton từ container nầy sang container khác, bạn Cut OptionButton Paste vơ container Đơi container nằm che control khác Muốn mang container phía sau controls khác bạn Select container dùng Menu command Format | Order | Send to Back 11 ... YourForm: Private Sub CmdCreateForms_Click() Dim MyForm, YourForm Set MyForm = New Form2 MyForm.Caption = "This is My Form" MyForm.Show MyForm.Move 1000, 1000 Set YourForm = New Form2 YourForm.Caption... giống y form Vài Event thơng dụng Form Nhìn từ phương diện, Form giống Control Ta instantiate form nhiều lần để có nhiều form tương tợ Trong thí dụ đây, ta instantiate Form2 hai lần để có MyForm... form trở lại form khơng có thay đổi Nhưng bạn Unload form (thí dụ cách dùng Unload Form2 ), sau load trở lại cách dùng Form2 .Show chẳng hạn, Form phải trải qua trình Form_ Load, dĩ nhiên form tất

Ngày đăng: 28/08/2012, 15:46

Hình ảnh liên quan

Cài đặt các Properties của Form - Form và các Controls thông thường trong VB6

i.

đặt các Properties của Form Xem tại trang 3 của tài liệu.
Vị trí đầu tiên (top,left) của form có thể được thay đổi trong design time bằng cách di chuyển hình nhỏ của nó trong window Form Layout:  - Form và các Controls thông thường trong VB6

tr.

í đầu tiên (top,left) của form có thể được thay đổi trong design time bằng cách di chuyển hình nhỏ của nó trong window Form Layout: Xem tại trang 3 của tài liệu.
Nếu bạn muốn biết được tình hình hiện thời của Textbox: SelText cho bạn dãy chữ đang được selected - Form và các Controls thông thường trong VB6

u.

bạn muốn biết được tình hình hiện thời của Textbox: SelText cho bạn dãy chữ đang được selected Xem tại trang 9 của tài liệu.
Lúc Run-time bạn có thể thay đổi hình hay Caption của CommandButton. Trong thí dụ dưới đây, Caption của CommandButton CmdOperation flip-flop giữa hai values Stop và Start:  - Form và các Controls thông thường trong VB6

c.

Run-time bạn có thể thay đổi hình hay Caption của CommandButton. Trong thí dụ dưới đây, Caption của CommandButton CmdOperation flip-flop giữa hai values Stop và Start: Xem tại trang 10 của tài liệu.
OptionButto n( còn gọi là RadioButton) có hình tròn với một chấ mở giữa, thay gì hình vuông với một gạch ở giữa như CheckBox - Form và các Controls thông thường trong VB6

ption.

Butto n( còn gọi là RadioButton) có hình tròn với một chấ mở giữa, thay gì hình vuông với một gạch ở giữa như CheckBox Xem tại trang 11 của tài liệu.

Từ khóa liên quan

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

Tài liệu liên quan