|
<P>改自老外的一个标准模块,原模块是使用SubClass技术.</P>
<P>我本意是想改为不使用SubClass,但是遇到一点麻烦,还没解决....</P>
<P>先放上这个利用图片框WndProc的类来.</P>
<P>以下是部分代码:</P>
<P>'*************************************************************************<BR>'**模 块 名:cTray<BR>'**说 明:设置托盘图标<BR>'**创 建 人:马大哈 <A href="http://www.m5home.com/">http://www.m5home.com/</A><BR>'**日 期:2007年3月5日<BR>'**版 本:V1.0<BR>'**备 注:改自老外一个标准模块,封装成为一个类.<BR>'*************************************************************************<BR>Option Explicit</P>
<P>Public Sub DelTrayIco()<BR> '删除托盘图标<BR>' DoEvents<BR> With TheData<BR> .uFlags = 0<BR> End With<BR> Shell_NotifyIcon NIM_DELETE, TheData<BR>End Sub</P>
<P>Public Sub AddTrayIco(ByRef EventPic As PictureBox)<BR> '设置托盘图标<BR> On Error Resume Next<BR> <BR> Set cPic = EventPic<BR> With TheData<BR> .uID = 0<BR> .hWnd = cPic.hWnd<BR> .cbSize = Len(TheData)<BR> .uFlags = NIF_ICON<BR> .uCallbackMessage = WM_MOUSEMOVE<BR> .uFlags = .uFlags Or NIF_MESSAGE<BR> End With<BR> Shell_NotifyIcon NIM_ADD, TheData<BR>End Sub</P>
<P>Public Sub SetTrayTip(Tip As String)<BR> '设置提示信息<BR> With TheData<BR> .szTip = Tip & vbNullChar<BR> .uFlags = NIF_TIP<BR> End With<BR> Shell_NotifyIcon NIM_MODIFY, TheData<BR>End Sub</P>
<P>Public Sub SetTrayIcon(Pic As StdPicture)<BR> If Pic.Type <> vbPicTypeIcon Then Exit Sub</P>
<P> With TheData<BR> .hIcon = Pic.Handle<BR> .uFlags = NIF_ICON<BR> End With<BR> Shell_NotifyIcon NIM_MODIFY, TheData<BR>End Sub</P>
<P>Private Sub cPic_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)<BR> x = x / Screen.TwipsPerPixelX<BR> Select Case x<BR> Case WM_LBUTTONUP '左键抬起<BR> RaiseEvent MouseClick(vbLeftButton, False)<BR> Case WM_LBUTTONDBLCLK '左键双击<BR> RaiseEvent MouseClick(vbLeftButton, True)<BR> Case WM_RBUTTONUP '右键抬起<BR> RaiseEvent MouseClick(vbRightButton, False)<BR> Case WM_RBUTTONDBLCLK '右键双击<BR> RaiseEvent MouseClick(vbRightButton, True)<BR> Case WM_MBUTTONUP '中键抬起<BR> RaiseEvent MouseClick(vbMiddleButton, False)<BR> Case WM_MBUTTONDBLCLK '中键双击<BR> RaiseEvent MouseClick(vbMiddleButton, True)<BR> End Select<BR>End Sub</P>
<P> </P>
<P>示例工程在此下载:</P>
<P> </P>
<P><FONT color=#602464><A href="http://www.m5home.com/blog2/attachments/month_0703/u20073521427.rar">http://www.m5home.com/blog2/attachments/month_0703/u20073521427.rar</A></FONT><A href="http://www.m5home.com/blog2/blogview.asp?logID=203" target=_blank></A></P>
<P> </P>
<P><FONT color=#ff0000><STRONG>*********************************** 已经修正了地址了.............-_-b</STRONG></FONT></P>
<P align=right><FONT color=#000066>[此贴子已经被作者于2008-11-5 16:22:46编辑过]</FONT></P> |
|