Số 31
HỒ LÔ BIẾN

Dành cho U16: Làm quen với C# và .NET:

Món khai vị: ChaoEChipNET

Anh SI SÁP

Lần trước anh em mình đã cài xong Visual Studio .NET (VS .NET), coi như “bếp núc” đã sẵn sàng. Bây giờ mình bắt tay vào học chế biến một "món khai vị" đơn giản.

- Là món gì dzậy anh? Rau muống luộc hay xào? (Hí hí)

Suỵt! Nói trước mất hay. Em cứ ... nhắm mắt làm theo chỉ dẫn của anh nhe. Nào, ta bắt đầu. Em khởi động VS .NET. Khi thấy trang Getting Started, em bấm nút New Project. Trên hộp thoại New Project vừa xuất hiện (hình 1), từ kiểu dự án (project type) Visual C# Projects, em chọn khuôn mẫu (template) Windows Application và đổi tên (trong ô Name) thành ChaoEChipNET.


Hình 1: Hộp thoại New Project

Xong xuôi, em bấm OK. VS .NET sẽ tự động tạo ra mọi thứ cần thiết ban đầu của một ứng dụng Windows (hình 2). Sướng nhé!


Hình 2: Ứng dụng ChaoEChipNET.

Có nhiều cửa sổ hữu ích trong môi trường thiết kế của VS để phát triển ứng dụng. Khoan! Em đừng vội mở ra tùm lum, coi chừng... “trúng gió”. Anh hướng dẫn tới đâu, em mở tới đó, hén! Các cửa sổ then chốt mà em sẽ thường xuyên "dòm ngó" khi tạo các ứng dụng Windows là Solution Explorer, Properties và Toolbox. Nếu không thấy các cửa sổ này, em làm cho chúng xuất hiện theo cách thức được mô tả trong Bảng 1.

Cửa sổ

Các chọ lựa hay phím tắt

Properties

Phím F4

 

Chọn View, Properties từ trình đơn VIEW

 

Bấm nút Properties trên thanh công cụ chuẩn

Toolbox

Tổ hợp phím tắt Ctrl+Alt+X

 

Chọn VIEW, Toolbox từ trình đơn VIEW

 

Bấm nút TOOLBOX trên thanh công cụ chuẩn

Solution Explorer

Tổ hợp phím tắt Ctrl+Alt+L

 

Chọn VIEW, Solution Explorer từ trình đơn VIEW

 

Bấm nút Solution Explorer trên thanh công cụ chuẩn

Bảng 1: Các phím tắt hay thao tác đối với các cửa sổ chính yếu khi thiết kế biểu mẫu

Em để ý, có một cửa sổ trống trơn nằm "chình ình" giữa màn hình. Đó là "khuôn mặt" của ứng dụng mà anh em mình sắp tạo ra. Trong môi trường thiết kế, người ta gọi đấy là biểu mẫu (form). Ta có thể "xây đắp" ứng dụng rất nhanh bằng cách lôi và thả các điều khiển (controls) từ hộp đồ nghề Toolbox vào biểu mẫu, thiết đặt các thuộc tính (properties) và viết mã lệnh đáp ứng các tình huống (events) của các điều khiển đó.

- Điều khiển, tình huống, đáp ứng là gì dzậy anh? Em hổng hiểu!

Ví dụ, khi có ai đó “nhéo” (ngắt) em một cái, đó là tình huống. Trong tình huống như vậy em sẽ phản ứng như thế nào? Nếu “đối tượng” nhéo em là “người iu” thì đó là một cái “nhéo yêu”, em chỉ giả vờ “ui dzaaa!” và nhăn nhó lấy lệ, nhưng nếu đó là một “kẻ xa lạ” thì em có thể “phùng mang trợn má”, thậm chí “quyết một mất một còn”. Đó là các đáp ứng khác nhau của tình huống “bị nhéo”. Khi ứng dụng đang chạy, người dùng tác động lên các điều khiển (bấm nút nào đó chẳng hạn) tạo ra các tình huống, khi lập trình ta phải tính trước việc đáp ứng các tình huống ấy.

Em nghe kỹ nè, có vài cách khác nhau để thêm điều khiển vào biểu mẫu. Cách thứ nhất, em chỉ cần bấm kép vào một điều khiển trong Toolbox, nó tự động nhảy vào bên trên điều khiển nào đó mới vừa thêm trên biểu mẫu mà ta vừa "đụng" đến. Cách thứ hai, em chọn một điều khiển từ Toolbox rồi dùng chuột "vẽ" nó vào biểu mẫu. Cách này cho phép em dễ dàng quy định vị trí và kích thước của điều khiển trên biểu mẫu.

[Đầu trang]

Trăm nghe không bằng một... làm thử, từ Toolbox, em hãy thêm vào biểu mẫu Form1 có sẵn một cái Button (nút bấm), một cái Textbox (ô văn bản) và một cái Label (nhãn) như hình 3.


Hình 3: Thêm các điều khiển vào biểu mẫu Form1 có sẵn.

Tiếp theo, em bấm chọn biểu mẫu và nhấn phím F4 để xem các thuộc tính của nó. Trong cửa sổ Properties, em thử tìm và thay đổi thuộc tính Font của biểu mẫu. Em thấy phông của các điều khiển trên biểu mẫu đồng loạt thay đổi. Tuy nhiên, nếu cần ta vẫn có thể thiết lập thuộc tính riêng biệt cho từng điều khiển.

Được không, em? Bây giờ em bấm kép trên biểu mẫu đang thiết kế để vào cửa sổ Code Editor, VS.NET sẽ bày ra hàm đáp ứng tình huống có sẵn của biểu mẫu. Em chú ý, hàm đáp ứng tình huống Form1_Load dùng để quy định những việc cần làm trong tình huống nạp biểu mẫu (biểu mẫu vừa hiện ra). Hàm này có hai đối mục (argument) là System.Object và System.EventArgs:

private void Form1_Load(object sender, System.EventArgs e)
{

}

Trong hàm Form1_Load, em thêm câu lệnh như sau:

private void Form1_Load(object sender, System.EventArgs e)
{
MessageBox.Show("Xin chao ban doc e-CHIP!");
}

MessageBox (hộp thông báo) được dùng để hiển thị lời nhắc nhở đối với người dùng. Câu lệnh em vừa thêm dùng để yêu cầu hộp thông báo hiển thị một dòng chữ theo ý mình. Cho ra vẻ... uyên thâm, ta nói rằng câu lệnh ấy gọi hàm Show của đối tượng MessageBox.

Ta vừa viết hàm đáp ứng tình huống cho biểu mẫu. Với từng điều khiển trên biểu mẫu, em phải chọn tình huống (vì có nhiều tình huống lắm!) rồi mới viết hàm đáp ứng tình huống. Thế này nhé, em bấm vào button1 trên biểu mẫu rồi nhìn vào cửa sổ Properties (lúc này trình bày các thuộc tính của button1), bấm nút có hình "tia chớp" trên thanh công cụ của cửa sổ đó. Em sẽ thấy một danh sách các tình huống khả dĩ của button1 (hình 4). Tìm đến tình huống Click (tình huống bấm nút) trên danh sách và bấm kép vào đó, em thấy xuất hiện cửa sổ Code Editor, mời mọc ta viết hàm đáp ứng tình huống button1_Click. Em viết vào đó như sau:

Hình 4. Thêm tình huống button1_Click cho button1.

private void button1_Click(object sender, System.EventArgs e)
{
label1.Text = textBox1.Text;
}

Câu lệnh này làm cho thuộc tính Text của label1 có nội dung giống như thuộc tính Text của textbox1.

Xong xuôi, em nhấn F5 để chạy ứng dụng (chọn Start từ trình đơn Debug hay bấm nút Start trên thanh công cụ chuẩn cũng được). Khi ứng dụng chạy, em sẽ thấy xuất hiện một hộp thông báo có dòng chữ Xin chao ban doc e-CHIP! mà em đã thêm trong hàm đáp ứng tình huống Form1_Load. Đóng vai người dùng, em đánh vào ô văn bản textBox1 dòng chữ Chao the gioi .NET và bấm nút button1. Dòng chữ ấy xuất hiện ở vị trí của label1. Đó là nhờ hàm đáp ứng tình huống button1_Click mà em vừa viết.

Muốn ứng dụng thôi chạy và trở lại môi trường thiết kế, em nhấn vào ô có dấu X ở góc phải trên của cửa sổ ứng dụng. Vậy là em đã xơi được "C xương cá" rồi đó. Đâu có khó hơn Pascal, hén?

[Đầu trang]
Trang chủ
Thư ngỏ
Nội lực "Peter Pan"
Cầu nối Intel Việt Nam
Chuyện trong tuần
Nhóm Frontpage
Cõi người ta
Kim cương doanh nghiệp
Bình luận thị trường
Cõi Mô-bai
Chuyên đề
Bổ ngửa
Nuôi hồn Robot
Túi càn khôn IT
Hồ lô biến
Cảm về Game
Nhật ký e-CHÍP
Bản quyền VASC Orient, Công ty phát triển phần mềm VASC
99 Triệu Việt Vương HN; Tel: (04) 9782235 • email: echip@vasc.com.vn