Để đưa được chương trỡnh của mỡnh vào System Tray chỳng ta cần phải lập trỡnh, cũng khụng cú gỡ phức tạp lắm. Tuy nhiờn cỏch nhanh nhất là dựng một ActiveX (tập tin .OCX) để giỳp chỳng ta dễ dàng đưa chương trỡnh của mỡnh vào System tray mà khụng hề tốn một giọt mồ hụi. Tụi xin giới thiệu với cỏc bạn một ActiveX tờn là ZTray dựng trong cỏc phiờn bản Visual Basic 32 bit (hoàn toàn free). Bạn chỉ cần tạo đối tượng này vào chương trỡnh & đặt cỏc thuộc tớnh thớch hợp cho nú tức thỡ chương trỡnh của bạn bay cỏi vốo vào System Tray, thiệt hết ý.
Bắt đầu với ZTray control ()) Đặc điểm
- Chỉ cần tạo một đối tượng duy nhất , nú sẽ hoỏ phộp cho chương trỡnh của bạn bay vào System Tray.
- Biểu tượng (Icon) của chương trỡnh trong System Tray phải là file biểu tượng (*.ico). - Icon này phải được đặt trong một ImageList, kớch thước khụng thành vấn đề.
- Nếu bạn khụng chỉ định Icon, nú sẽ tự động lấy Icon mặc định của nú (là quả địa cầu, trụng xấu tệ).
- & cũn nhiều thứ nữa ....
()) Một số thuộc tớnh & sự kiện
Ngoài những thuộc tớnh, sự kiện bỡnh thường của một đối tượng trong mụi trường VB. ZTray cũn cú cỏc thuộc tớnh đặc sau.
Thuộc tớnh này để bạn cú thể gỏn cho nú một ImageList. Trong ImageList này chứa (cỏc) Icon mà nú dựng làm biểu tượng chương trỡnh trong System Tray. Chỉ cú thể thay đổi lỳc Design, lỳc chương trỡnh đang chạy bạn khụng thay đổi được thuộc tớnh này đõu.
Cỳ phỏp: ZTray.ImageList [=value]
[value] Chớnh là tờn của ImageList (kiểu String)
- Nếu khụng cú ImageList nú sẽ tự động xài cỏi Icon mặc định của mỡnh.
- Nếu bạn cú thay đổi biểu tượng lỳc chương trỡnh thực thi bạn phải chủ động để nú biết bằng cỏch thay đổi chuộc tớnh ImageNumber hoặc gỏn ShowInTray = True (ngay cả khi nú đang là True).
- Nhắc lại nữa: Biểu tượng phải là icon file.
* ShowInTray Property
Nhận giỏ trị Boolean (TRUE/FALSE). True nghĩa là cho hiện Icon trong System Tray. Là False thỡ ngược lại.
Cỳ phỏp: ZTray.ShowInTray [=value] [value] là True hay False
- ShowInTray sẽ cú hiệu lực ngay khi chương trỡnh bắt đầu Run.
- Cú thể gỏn bạn True để Update cho Icon trong System Tray nếu cú thay đổi.
* ImageNumber Property
Thuộc tớnh này dựng để gỏn hoặc truy xuất thứ tự của Image mà ZTray dựng làm Icon cho chương trỡnh. Giỏ trị này là chỉ số của Image trong một ImageList.
Cỳ phỏp: ZTray.ImageNumber [=value]
[value] Chỉ số của image trong ImageList mà ZTray dựng làm biểu tượng (làm một Integer). Biểu tượng tự động cập nhật khi thuộc tớnh này cú sự thay đổi.
* TipText Property
Dựng để gỏn hoặc truy xuất đến ToolTip của đối tượng, ToolTip này sẽ tự động xuất hiện khi bạn rờ mouse đến trờn biểu tượng trong System Tray.
Cỳ phỏp: ZTray.TipText [=value]
[value] Là một String. Độ dài tối đa là 64 ký tự, nếu bạn cố tỡnh cho một string quỏ dài, nú tự động cắt bớt.
* Click Event
Xẩy ra khi người dựng click nỳt (trỏi hay phải) chuột vào Icon trong System Tray. Cỳ phỏp: Private Sub ZTray_Click (Button as integer)
[Button] cho biết nỳt nào được nhấn. 1 là Left Mouse Button
2 là Right Mouse Button
* DblClick Property
Xẩy ra khi người dựng Double click vào Icon trong System Tray (cả trỏi lẫn phải đều được cụng nhận một cỏch rừ ràng).
Cỳ phỏp:
Private Sub ZTray_DblClick (Button as integer) [Button] cho biết nỳt nào được nhấn.
1 là Left Mouse Button 2 là Right Mouse Button
()) Minh họa cỏch sử dụng
1. Chuẩn bị:
Sau đõy là một chương trỡnh thớ dụ minh họa cỏch sử dụng đối tượng ZTray.
Đầu tiờn bạn hóy chuẩn bị tập tin ZTray.ocx, nếu chưa cú hóy vào WebLH tải về, mở nộn vào thư mục System của Windows.
Bạn hóy khởi động VB, tạo một Project mới để bắt đầu cuộc thử nghiệm. 2. Đưa ZTray vào đề ỏn:
Project / Components hoặc dựng tổ hợp phớm Ctrl - T để mở cửa sổ Components. Cick chọn ActiveX tờn ZTray System Tray Control.
Nếu chưa cú trong Danh sỏch bạn cú thể Click nỳt Browse để chọn tập tin ZTray.ocx từ một thư mục nào đú
Vỡ ZTray đũi hỏi cú một ImageList nờn bạn phải click chọn thờm "Microsoft Windows Common Controls 6.0".
3. Thiết kế:
Trờn Form1, bạn tạo một ImageList tờn là ImageList1 & một ZTray tờn là ZTray1. Và tạo cỏc menu cú tờn tương ứng như sau:
Caption Name Checked
PopUp mnuPopUp
Set ToolTips mnuTips Show In Tray mnuShow True
About mnuAbout
Exit mnuExit
Click phải chuột lờn ImageList1 vừa tạo khi nóy, chọn Properties, chọn tiếp thẻ Images, dựng nỳt Insert Picture để thờm vào một số Image (nhớ là phải dựng Icon file). Đại loại như sau, vậy là ta cú 7 hỡnh (tứ 1 đến 7). Click OK để đúng hộp thoại này lại.
Lại click phải lờn ZTray1 vừa tạo. Nhập vào khung ImageList là ImageList1, ImageNumber là 1 (ảnh đầu tiờn trong ImageList1), TipText: nhập đại một vài chữ, xong click OK.
Sau đú tiến hành viết code cho chương trỡnh như sau Option Explicit
Private Sub Form_Load()
ZTray1.ImageNumber = 1 ZTray1.ShowInTray = True
End Sub
Ngay lỳc form được nạp, đặt chỉ số cho ImageNumber & cho hiện biểu tượng trong System Tray.
Private Sub Form_Unload(Cancel As Integer)
ZTray1.ShowTray = True Visible = False
Cancel = 1
End Sub
Khi người dựng click nỳt close trờn thanh Title bar, chương trỡnh sẽ khụng thoỏt mà chỉ ẩn form đi thụi. Nhưng trước khi giấu Form nú lại cho hiện Icon nếu lỳc đú ẩn để trỏnh trường hợp cả Form lẫn Icon đều biến mất.
Private Sub mnuAbout_Click()
'About
MsgBox "ZTray Demo by Thien Dang 30/07/2000"
End Sub
Private Sub mnuExit_Click()
'Exit End
End Sub
Thoỏt khi chương trỡnh bằng lịnh Exit trong menu.
Private Sub mnuIcon_Click()
' Set Icon
ZTray1.ImageNumber = InputBox("Image (1 - 7) ?", "Icon", 1)
End Sub
Thay đổi Icon cho ZTray. Ta cú thể nhập vào số từ 1 đến 7 do cú 7 Image như đó núi ở trờn.
Private Sub mnuShow_Click()
'Show In Tray
ZTray1.ShowInTray = mnuShow.Checked
If mnuShow.Checked = False Then Visible = True
End Sub
Chức năng này cú nhiệm vụ bật tắt cỏi Icon của chương trỡnh. Khi bạn tắt nú sẽ tự hiển thị form lờn để trỏnh trường hợp cả Icon lẫn form đều mất tớch.
Private Sub mnuTips_Click()
' Set Tooltips
ZTray1.TipText = InputBox("Your text here", "Enter TipText", "Text")
End Sub
Thay đổi ToolTip. Độ dài tối đa 64 ký tự.
Private Sub ZTray1_Click(button As Integer)
If button = 1 Then Me.Visible = True SetFocus Else PopupMenu mnuPopUp End If End Sub
Nếu click nỳt trỏi thỡ hiện Form, nỳt phải thỡ hiện menu.
Bõy giờ bạn cú thể chạy thử chương trỡnh của mỡnh rồi đấy. Bạn cú thể click phải chuột trờn Icon trong System Tray để truy xuất menu.