1. Trang chủ
  2. » Giáo án - Bài giảng

LẬP TRÌNH TRÊN môi TRƯỜNG WINDOWS xử lý CONTROL

10 280 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 734,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

LẬP TRÌNH TRÊN MÔI TRƯỜNG WINDOWS *** XỬ LÝ CONTROL... Giới thiệu  Có 3 loại Control  Extended Control  Ví dụ: một Button mới có background thay đổi khi di chuyển chuột đến nó  Comp

Trang 1

LẬP TRÌNH TRÊN

MÔI TRƯỜNG WINDOWS

***

XỬ LÝ CONTROL

Trang 2

Nội dung trình bày

 Giới thiệu

 Tạo Control

 Delegate và Event

Trang 3

Giới thiệu

 Có 3 loại Control

 Extended Control

 Ví dụ: một Button mới có background thay đổi khi di chuyển chuột đến nó

 Composite Control

 Ví dụ: một control cho phép nhập vào địa chỉ cá nhân gồm số nhà, tên đường, phường, quận, thành phố…

 Custom Control

 Ví dụ: một control thể hiện đồng hồ máy tính

Trang 4

Tạo Control

 Tạo Extended Control

 Kế thừa từ lớp đối tượng tương ứng

 Bổ sung hoặc override các phương thức cần thiết

 Tạo Custom Control

Kế thừa từ lớp Control

 Người viết chịu trách nhiệm về hình dạng và cách ứng xử của control

 Tạo Composite Control

Kế thừa từ lớp UserControl

 Xác định các control con của nó

 Bổ sung hoặc override lại các phương thức cần thiết

Trang 5

Tạo Control

 Tạo Extended Control

class MyButton:System.Windows.Forms.Button

{

public MyButton()

{

this.MouseEnter += new EventHandler(MyButton_MouseEnter);

this.MouseLeave += new EventHandler(MyButton_MouseLeave);

}

void MyButton_MouseLeave(object sender, EventArgs e)

{

Image image = Image.FromFile(normalImageFile);

if (image != null)

this.BackgroundImage = image;

}

void MyButton_MouseEnter(object sender, EventArgs e)

{

Image image = Image.FromFile(highlightImageFile);

if (image != null)

this.BackgroundImage = image;

}

}

Trang 6

Tạo Control

 Tạo Custom Control

class ClockControl:System.Windows.Forms.Control

{

public ClockControl() {

………}

void timer1_Tick(object sender, EventArgs e)

{

this.Invalidate();

}

void ClockControl_Paint(object sender, System.Windows.Forms.PaintEventArgs e) {

string str = "";

str = DateTime.Now.Hour.ToString() +":"

+ DateTime.Now.Minute.ToString()+":"

+ DateTime.Now.Second.ToString();

e.Graphics.DrawString(str, this.Font, new SolidBrush(this.ForeColor), 0, 0); }

}

Trang 7

Tạo Control

 Thêm User Control vào project bằng cách chọn Project > Add

> User Control Đặt tên User Control đó (ví dụ: Diachi.cs)

 Thêm các control (textbox và label) thể hiện số nhà, đường, phường, quận, thành phố như sau:

 Dịch project (Ctrl + Shift + B) và chọn lại Form1.

 Trong tab Components của toolbox sẽ có 1 control mới được thêm vào có tên là Diachi Kéo Control đó vào form và xử lý như mọi control bình thường khác.

Trang 8

Tạo Control

 Thêm các property cho control

public string Sonha

{

get {return this.txtSonha.Text;}

set {this.txtSonha.Text = value;}

}

 Thêm các sự kiện cho control

 Sử dụng delegate và event

Trang 9

Delegate và Event

 Delegate

 Ngữ nghĩa tương tự con trỏ hàm

 Khai báo

 public delegate void AddressChangedHandler(string address);

 Event

 Khai báo

 public event AddressChangedHandler AddressChanged;

 “Phát” sự kiện

if (AddressChanged != null) AddressChanged(str);

Trang 10

12/30/15

Ngày đăng: 29/12/2015, 22:25

TỪ KHÓA LIÊN QUAN

w