Tạo một icon động trong khay hệ thống trong C# 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.. Sử dụng một Timer, Timer này sẽ phá
Trang 1Tạo một icon động trong khay hệ thống trong C#
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)
Tạo và hiển thị NotifyIcon 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 NotifyIcon.Icon
Với NET Framework thì rất dễ dàng để hiển thị một icon trong khay hệ thống bằng NotifyIcon 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, NotifyIcon 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 System.Windows.Forms;
using System.Drawing;
Trang 2public class AnimatedSystemTrayIcon : System.Windows.Forms.Form { // (Bỏ qua phần mã designer.)
Icon[] images;
int offset = 0;
private void Form1_Load(object sender, System.EventArgs e) {
// Nạp vào tám icon
images = new Icon[8];
images[0] = new Icon("moon01.ico");
images[1] = new Icon("moon02.ico");
images[2] = new Icon("moon03.ico");
images[3] = new Icon("moon04.ico");
images[4] = new Icon("moon05.ico");
images[5] = new Icon("moon06.ico");
images[6] = new Icon("moon07.ico");
images[7] = new Icon("moon08.ico");
}
private void timer_Elapsed(object sender,
System.Timers.ElapsedEventArgs e) {
Trang 3
// Thay đổi icon
// Phương thức thụ lý sự kiện này phát sinh mỗi giây một lần notifyIcon.Icon = images[offset];
offset++;
if (offset > 7) offset = 0;
}
}