TÀI LIỆU THAM KHẢO
BÀI 4: WINDOWS FORM – CÁC ĐIỀU KHIỂN NỘI TẠI
4.1.2. Tổng quan về đối tượng: thuộc tính, phương thức và sự kiện
Visual Studio cung cấp rất nhiều điều khiển giúp người lập trình dễ dàng triển khai giao diện chương trình. Các điều khiển được gom nhóm theo các nhóm chức năng, bao gồm:
Các điều khiển vật chứa
Các điều khiển menu
Các điều khiển dữ liệu
Các thành phần
Các điều khiển hỗ trợ in
Các điều khiển hộp thoại
Mỗi đối tượng điều khiển đều có 3 thành phần cơ bản liên quan, đó là:
Thuộc tính của đối tượng.
Sự kiện xảy ra khi có hành động nào đó tác động lên đối tượng.
Phương thức - khả năng mà đối tượng có thể làm được.
a) Thuộc tính (Properties).
Thuộc tính (Propertiy): Là các đặc điểm quy định lên đối tượng, ví dụ độ cao (height), độ rộng (width), mầu nền (BackColor),…
Mỗi đối tượng ta có thể thay đổi thuộc tính thông qua 2 cách:
Thay đổi khi thiết kế (Design): Nhấp chuột vào đối tượng, nhấn F4. Trong cửa sổ Properties ta chọn thuộc tính của đối tượng và nhập vào giá trị theo yêu cầu.
Thay đổi khi chương trình đang được kích hoạt (RunTime): Viết lệnh trong chương trình để gán giá trị cho thuộc tính của đối tượng theo cú pháp:
<Tên_đối_tương>.<Tên_thuộc_tính> = <Giá_trị>
Chú ý: Có một số thuộc tính của đối tượng chỉ có thể thay đổi giá trị tại thời điểm thiết kế chương trình, ví dụ: ScrollBars của TextBox, Style của ComboBox,…. Giới thiệu một số thuộc tính chung (Có ở hầu hết các đối tượng):
Name: Tên của đối tượng.
Height, Width: Độ cao và độ rộng.
Left, Top: Tọa độ lề trái và tọa độ cạnh trên cùng so với đối tượng chứa nó.
Font, ForeColor, BackColor: Font chữ, mầu chữ, mầu nền.
Enabled: (Yes/No): Quy định có cho hay không cho truy nhập và tác động lên đối tượng.
Visible: (Yes/No): Quy định có hay không hiển thị đối tượng.
TabIndex: Qui định thứ tự nhận focus khi dịch chuyển bằng phím TAB.
b) Phương thức (Methods).
Khái niệm: Khả năng mà đối tượng có thể thực hiện được, ví dụ như khả năng phóng to, thu nhỏ hoặc di chuyển tới vị trí khác của đối tượng, …
Mỗi đối tượng đều có khả năng thực hiện được một số các công việc tương ứng. Ví
dụ các đối tượng có thể tự dịch chuyển vị trí tới 1 nơi nào đó trên màn hình (Move),
có thể nhận sự hội tụ của con trỏ văn bản (SetFocus),…
Để gọi phương thức của đối tượng ta sử dụng cú pháp sau:
<Tên_đối_tượng>.<Phương_thức> [Danh sách tham số]
Ví dụ:
textbox1.Focus(): Đưa con trỏ hội tụ vào đối tượng có tên Text1
button1.CreateControl()
c) Sự kiện (Events).
Khái niệm: Sự kiện là các tác động tới đối tượng, ví dụ tác động của phím bấm (keypressed), tác động của chuột như bấm chuột phải, trái, nhấp kép, …
Mỗi khi đối tượng bị tác động ta có thể viết các lệnh để giải quyết các công việc liên quan. Ví dụ khi người sử dụng nhấn chuột trái vào 1 nút lệnh, khi nhập dữ liệu vào TextBox, khi thay đổi độ rộng của Form,… Các lệnh này được đặt trong một thủ tục (gọi là thủ tục tình huống) trong cửa sổ Code của Form.
Giới thiệu 1 số sự kiện:
Click: Sự kiện xảy ra khi ta click chuột trái lên đối tượng.
Change: Xảy ra khi ta thay đổi nội dung (giá trị) của đối tượng.
MouseMove: Xảy ra khi ta di chuyển con chuột trên đối tượng.
4.1.3. Kiến trúc (Architecture) của Windows Forms.
Trong mô hình cây thừa kế các lớp đều thừa kế từ lớp Object. Dưới đây là danh sách các lớp mà lớp form kế thừa:
Thứ bậc các classes Chú thích
Object Lớp cơ sở đầu trong .NET, superclass cao nhất từ đó sinh ra con
cháu.
MarshalByRefObject Cung cấp các code cần thiết để quản lý vòng đời của objects.
Component Cung cấp sự gây dựng căn bản của IComponent interface và cho
phép các chương trình khác nhau dùng chung một object
Control
Đây là base class của mọi component dùng để hiển thị. Nó hỗ trợ những khả năng liên hệ đến vóc dáng và công tác hiển thị từ Show, BringtoFront, Font, Color cho đến Dock, Anchor. Ngoài
ra nó còn cung cấp các Events của keyboard, mouse và có method WndProc để cho ta truy cập các thông điệp của Windows.
ScrollableControl Cung cấp chức năng tự động cuốn khi có chứa bên trong một
control cần thêm chỗ để hiển thị.
ContainerControl Cho phép một component chứa các controls khác.
Form Cửa sổ chính của một chương trình.