Phát triển ứng dụng với Windows Form - Pdf 64

Phát triển ứng dụng với Windows Form.
3.1 Tạo một Windows Form đơn giản
Windows Form là công cụ dùng để tạo các ứng dụng Windows, nó mượn các
ưu điểm mạnh của ngôn ngữ Visual Basic : dễ sử dụng, hỗ trợ mô hình RAD đồng
thời kết hợp với tính linh động, hướng đối tượng của ngôn ngữ C#. Việc tạo ứng
dụng Windows trở lên hấp dẫn và quen thuộc với các lập trình viên.Trong phần
này, ta sẽ thảo luận hai cách khi tạo một ứng dụng Windows : Dùng bộ soạn mã để
gõ mã trực tiếp hoặc dùng bộ công cụ kéo thả của IDE. Ứng dụng của chúng ta khi
chạy sẽ xuất dòng chữ “Hello World!” ra màn hình, khi người dùng nhấn vào
Button “Cancel” thì ứng dụng sẽ kết thúc.
Hình 2- Ứ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";
Gán vị trí, chuỗi và kích thước cho đối tượng Label :
lblOutput.Location = new System.Drawing.Point (16, 24);

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 static void Main( )
{
Application.Run(new HandDrawnClass( ));
}
Sau đây là mã hoàn chỉnh của toàn bộ ứng dụng
using System;
using System.Windows.Forms;
namespace ProgCSharp
{
public class HandDrawnClass : Form
{
// Label dùng hiển thị chuỗi ‘Hello World’
private System.Windows.Forms.Label lblOutput;
// Button nhấn ‘Cancel’
private System.Windows.Forms.Button btnCancel;
public HandDrawnClass( )
{
// Tạo các đối tượng
this.lblOutput = new System.Windows.Forms.Label ( );
this.btnCancel = new System.Windows.Forms.Button ( );

Bên cạnh trình soạn mã, .NET còn cung cấp một bộ các công cụ kéo thả để
làm việc trong môi trường phát triển tích hợp IDE ( Intergrate Development
Enviroment ), IDE cho phép kéo thả rồi tự động phát sinh mã tương ứng. Ta sẽ tạo
lại ứng dụng trên bằng cách dùng bộ công cụ trong Visual Studio, ta mở Visual
Studio và chọn ‘New Project’. Trong cửa sổ ‘New Project’, chọn loại dự án là
Visual C# và kiểu ứng dụng là ‘Windows Applications’, đặt tên cho ứng dụng là
ProgCSharpWindowsForm.

Hình 3:Màn hình tạo ứng dụng Windows mới.
Vs.NET sẽ tạo một ứng dụng Windows mới và đặt chúng vào IDE như hình
dưới :
Hình 3 Môi trường thiết kế kéo thả
Phía bên trái của cửa hình trên là một bộ các công cụ (Toolbox) kéo thả dành cho
các ứng dụng Windows Form, chính giữa là một Form được .NET tạo sẵn có tên
Form1. Với bộ công cụ trên, ta có thể kéo và thả một Label hay Button trực tiếp
vào Form, như hình sau :
Với thanh công cụ Toolbox ở bên trái, ta có thể thêm các thành phần mới
vào nó bằng các chọn View/Add Reference. Gó bên phải phía trên là cửa sổ duyệt
toàn bộ các tập tin trong giải pháp (Solution, một giải pháp có một hay nhiều dự án
con).
Phía dưới là cửa sổ thuộc tính, hiển thị mọi thuộc tính về mục chọn hiện
hành. Ta có thể gán giá trị chuỗi hiển thị hoặc thay đổi font cho Label một cách
trực tiếp trong cửa sổ thuộc tính.

Hình 5 Thay đổi Font trực tiếp bằng hội thoại Font
Với IDE này, ta có thể kéo thả một Button và bắt sự kiện click của nó một
cách dễ dàng, chỉ cần Nhấn đúp vào Button thì tự động .NET sẽ phát sinh ra các
mã tương ứng trong trang mã của Form (Code-Behind page) như : khai báo, tạo
Button và hàm bắt sự kiện click của Button.
Hình 6 Sau khi click đúp nút Cancel

base.Dispose( );
if(components != null)
components.Dispose( );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent( )
{
this.lblOutput = new System.Windows.Forms.Label( );
this.btnCancel = new System.Windows.Forms.Button( );
this.SuspendLayout( );
//
// lblOutput
//
this.lblOutput.Font = new System.Drawing.Font("Arial",
15.75F, System.Drawing.FontStyle.Bold,
System.Drawing.GraphicsUnit.Point,((System.Byte)(0)));
this.lblOutput.Location = new System.Drawing.Point(24, 16);
this.lblOutput.Name = "lblOutput";
this.lblOutput.Size = new System.Drawing.Size(136, 48);
this.lblOutput.TabIndex = 0;
this.lblOutput.Text = "Hello World";
// btnCancel
this.btnCancel.Location = new System.Drawing.Point(192, 208);
this.btnCancel.Name = "btnCancel";
this.btnCancel.TabIndex = 1;
this.btnCancel.Text = "Cancel";

/// </summary>
Các mã tạo và hiệu chỉnh đối tượng thay vì được đặt trực tiếp vào hàm khởi tạo của
Form, thì ở đây IDE đặt chúng vào trong hàm InitializeComponent(), Sau đó hàm
này được gọi bởi hàm khởi tạo của Form. Mọi ứng dụng Windows Form đều phát
sinh ra hàm này.
3.3.Tạo ứng dụng Windows Form khác.
Trong ứng dụng trên ta đã thảo luận sơ qua về ứng dụng Windows Form, phần
này ta sẽ tạo một ứng dụng Windows khác thực tế hơn. Ứng dụng có tên là
FileCopier, cho phép chép hay xóa một hoặc nhiều tập tin từ vị trí này sang vị trí
khác. Mục đích của ứng dụng là minh họa sâu hơn về các kỹ năng lập trình C# và
giúp người đọc hiểu thêm về namespace Windows.Forms. Giao diện của ứng dụng
sau khi hoàn chỉnh sẽ như sau:
Hình 3-7 Giao diện người dùng của FileCopier
Giao diện của ứng dụng gồm các thành phần sau :
• Labels: Các tập tin nguồn (Source Files) and Thư múc đích (Target Directory).
• Buttons: Bỏ các dấu chọn trên cây bên trái (Clear), Copy, Delete, and Cancel.
• Checkbox : ghi đè lên nếu đã có sẵn ( "Overwrite if exists" )
• Checkbox : hiển thị đường dẫn của mục được trọn ở cây bên phải.
• Hai cây (TreeView) chứa tập tin.
Khi người dùng nhấn vào Button ‘Copy’ thì tất các tập tin được chọn ở cây
bên trái sẽ được chép qua cây bên phải, cũng như khi nhấn vào Button ‘Delete’ thì
sẽ xóa các tập tin được chọn.
3.3.1.Tạo giao diện cho ứng dụng.
Đầu tiên ta tạo một dự án Windows Form mới có tên FileCopier. IDE sẽ hiển
thị màn hình thiết kế (Designer) lên, ta sẽ thực hiện kéo thả các Label, Button,
Checkbox và TreeView cho đến khi thích hợp như hình dưới đây :


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status