Dùng bộ soạn mã ( Nodepa d)

Một phần của tài liệu Phát triển ứng dụng cơ sở dữ liệu với c và net framework (Trang 66 - 67)

Chương 8 Ứng dụng Windows với WindowsForm

8.1.1. Dùng bộ soạn mã ( Nodepa d)

Mặc dù Visual Studio .NET cung cấp một bộ các công cụ phục vụ cho việc kéo thả, giúp tạo các ứng dụng Windows một các nhanh chóng và hiệu quả, nhưng trong phần này ta chỉ cần dùng bộ soạn mã.

Hình 8-1 Ứng dụng minh họa việc hiển thị chuỗi và bắt sự kiện của Button

Đầu tiên, ta dùng lệnh using để thêm vùng tên sau : using System.Windows.Forms;

Ta sẽ cho ứng dụng của ta thừa kế từ vùng tên Form: public class HandDrawnClass: Form

Bất kỳ một ứng dụng Windows Form nào cũng đều thừa kế từđối tượng Form, ta có thể dùng đối tượng này để tạo ra các cửa sổ chuẩn như: các cửa sổ trôi (floating form), thanh công cụ (tools), hộp thoại (dialog box)… Mọi Điều khiển

trong bộ công cụ của Windows Form (Label, Button, Listbox…) đều thuộc vùng tên này.

Ta sẽ khai báo 2 đối tượng, một Label để giữ chuỗi ‘ Hello World !’ và một

Button để bắt sự kiện kết thúc ứng dụng.

private System.Windows.Forms.Label lblOutput; private System.Windows.Forms.Button btnCancel;

Tiếp theo ta sẽ khởi tạo 2 đối tượng trên trong hàm khởi tạo của Form: this.lblOutput = new System.Windows.Forms.Label( );

this.btnCancel = new System.Windows.Forms.Button( );

Sau đó ta gán chuỗi tiêu đề cho Form của ta là ‘Hello World‘: this.Text = "Hello World";

Chú ý: Do các lệnh trên được đặt trong hàm khởi tạo của Form

HandDrawClass, vì thế từ khóa this sẽ tham chiếu tới chính nó.

Gán vị trí, chuỗi và kích thước cho đối tượng Label : lblOutput.Location = new System.Drawing.Point (16, 24); lblOutput.Text = "Hello World!";

lblOutput.Size = new System.Drawing.Size (216, 24);

Vị trí của Label được xác định bằng một đối tượng Point, đối tượng này cần hai thông số: vị trí so với chiều ngang (horizontal) và đứng (vertical) của thanh cuộn.

Kích thước của Label cũng được đặt bởi đối tượng Size, với hai thông số là chiều rộng (width) và cao (height) của Label. Cả hai đối tượng Point và Size đều thuộc vùng tên System.Drawing : chứa các đối tượng và lớp dùng cho đồ họa.

Tương tự làm với đối tượng Button :

btnCancel.Location = new System.Drawing.Point (150,200); btnCancel.Size = new System.Drawing.Size (112, 32);

btnCancel.Text = "&Cancel";

Để bắt sự kiện click của Button, đối tượng Button cần đăng ký với trình quản lý sự kiện, để thực hiện điều này ta dùng ‘delegate’. Phương thức được ủy thác (sẽ

bắt sự kiện) có thể có tên bất kỳ nhưng phải trả về kiểu void và phải có hai thông số: một là đối tượng ‘sender’ và một là đối tượng ‘System.EventArgs’.

protected void btnCancel_Click(object sender, System.EventArgs e) {

//... }

Ta đăng ký phương thức bắt sự kiện theo hai bước. Đầu tiên, ta tạo một trình quản lý sự kiện mới System.EventHandler, rồi đẩy tên của phương thức bắt sự kiện vào làm tham số :

new System.EventHandler (this.btnCancel_Click);

Tiếp theo ta sẽ ủy thác trình quản lý vừa tạo ở trên cho sự kiện click của Button bằng toán tử+=

Mã gộp của hai bước trên :

one:btnCancel.Click +=new System.EventHandler (this.btnCancel_Click);

Để kết thúc việc viết mã trong hàm khởi tạo của Form, ta sẽ thêm hai đối tượng Label và button vào Form của ta :

this.Controls.Add (this.btnCancel); this.Controls.Add (this.lblOutput);

Sau khi ta đã định nghĩa hàm bắt sự kiện click trên Button, ta sẽ viết mã thi hành cho hàm này. Ta sẽ dùng hàm tĩnh ( static ) Exit() của lớp Application để kết thúc ứng dụng :

protected void btnCancel_Click(object sender, System.EventArgs e) {

Application.Exit(); }

Cuối cùng, ta sẽ gọi hàm khởi tạo của Form trong hàm Main(). Hàm Main() là

điểm vào đầu tiên của Form. public staticvoid Main( ) {

Application.Run(new HandDrawnClass( )); }

Một phần của tài liệu Phát triển ứng dụng cơ sở dữ liệu với c và net framework (Trang 66 - 67)

Tải bản đầy đủ (PDF)

(192 trang)