Các giải pháp lập trình CSharp- P23: Các giải pháp lập trình C# khảo sát chiều rộng của thư viện lớp .NET Framework và cung cấp giải pháp cụ thể cho các vấn đề thường gặp. Mỗi giải pháp được trình bày theo dạng “vấn đề/giải pháp” một cách ngắn gọn và kèm theo là các ví dụ mẫu. | 221 Chương 6 Windows Form using System using using public class DragForm Bỏ qua phần mã designer. Biến cờ dùng để theo vết form. Nếu đang ở chế độ kéo rê việc di chuyển chuột trên Label sẽ được chuyển thành việc di chuyển form. private bool dragging Lưu trữ offset vị trí được nhắp vào trên Label . private Point pointClicked private void lblDrag MouseDown object sender e if dragging true pointClicked new Point else dragging false private void lblDrag MouseMove object sender e if dragging Point pointMoveTo Tìm vị trí hiện tại của chuột trong tọa độ màn hình. pointMoveTo new Point 222 Chương 6 Windows Form Di chuyển form. pointMoveTo private void IblDrag MouseUp object sender e dragging false private void cmdClose Click object sender e 16. Tạo một icon động trong hy hệ thống ỉ Bạn cần tạo một icon động trong khay hệ thống chẳng hạn cho biết tình trạng của một tác vụ đang chạy . ft Tạo và hiển thị Notifylcon. Sử dụng một Timer Timer này sẽ phát sinh một cách định kỳ mỗi giây chẳng hạn và cập nhật thuộc tính . Với .NET Framework thì rất dễ dàng để hiển thị một icon trong khay hệ thống bằng Notifylcon. Bạn chỉ cần thêm điều kiểm này vào form cung cấp hình icon bằng thuộc tính Icon. Bạn cũng có thể thêm một menu ngữ cảnh vào điều kiểm này bằng thuộc tính ContextMenu tùy chọn . Không giống với các điều kiểm khác Notifylcon sẽ tự động hiển thị menu ngữ cảnh khi nó được nhắp phải. Bạn có thể làm động icon trong khay hệ thống bằng cách thay đổi icon định kỳ. Ví dụ chương trình sau sử dụng tám icon thể hiện hình mặt trăng từ khuyết đến đầy. Bằng cách dịch chuyển từ hình này sang hình khác ảo giác về hình động sẽ được tạo ra. using System using