学院首页 软件应用 编程开发 创意设计 认证培训 软件论坛
ASP ASP.NET PHP JSP SQL MYSQL Java VB

您的位置:学院 >> 编程开发 >> VB >> VB6如何在托盘中写入应用程序图标


VB6如何在托盘中写入应用程序图标


  1、新建立一个VB6工程,将Form1的ShowInTaskBar属性设置为False

  2、菜单:工程--添加模块 按“打开”这样就添加了一个新模块,名为Module1,保存为Module1.bas

  3、在Module1中写下如下代码:

Option Explicit

Public Const MAX_TOOLTIP As Integer = 64
Public Const NIF_ICON = &H2
Public Const NIF_MESSAGE = &H1
Public Const NIF_TIP = &H4
Public Const NIM_ADD = &H0
Public Const NIM_DELETE = &H2
Public Const WM_MOUSEMOVE = &H200
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONUP = &H202
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205
Public Const WM_RBUTTONDBLCLK = &H206

Public Const SW_RESTORE = 9
Public Const SW_HIDE = 0

Public nfIconData As NOTIFYICONDATA


Public Type NOTIFYICONDATA
 cbSize As Long
 hWnd As Long
 uID As Long
 uFlags As Long
 uCallbackMessage As Long
 hIcon As Long
 szTip As String * MAX_TOOLTIP
End Type

Public Declare Function ShowWindow Lib "user32" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
Public Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long

  4、在Form1的Load事件中写下如下代码:

Private Sub Form_Load()

 '以下把程序放入System Tray====================================System Tray Begin
 With nfIconData
  .hWnd = Me.hWnd
  .uID = Me.Icon
  .uFlags = NIF_ICON Or NIF_MESSAGE Or NIF_TIP
  .uCallbackMessage = WM_MOUSEMOVE
  .hIcon = Me.Icon.Handle
  '定义鼠标移动到托盘上时显示的Tip
  .szTip = App.Title + "(版本 " & App.Major & "." & App.Minor & "." & App.Revision & ")" & vbNullChar
  .cbSize = Len(nfIconData)
 End With
 Call Shell_NotifyIcon(NIM_ADD, nfIconData)
 '=============================================================System Tray End
 Me.Hide
End Sub

  5、在Form1的QueryUnload事件中写入如下代码:

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Call Shell_NotifyIcon(NIM_DELETE, nfIconData)
End Sub

  6、在Form1的MouseMove事件中写下如下代码:

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
 Dim lMsg As Single
 lMsg = X / Screen.TwipsPerPixelX
 Select Case lMsg
  Case WM_LBUTTONUP
   'MsgBox "请用鼠标右键点击图标!", vbInformation, "实时播音专家"
   '单击左键,显示窗体
   ShowWindow Me.hWnd, SW_RESTORE
   '下面两句的目的是把窗口显示在窗口最顶层
   'Me.Show
   'Me.SetFocus
   '' Case WM_RBUTTONUP
   '' PopupMenu MenuTray '如果是在系统Tray图标上点右键,则弹出菜单MenuTray
   '' Case WM_MOUSEMOVE
   '' Case WM_LBUTTONDOWN
   '' Case WM_LBUTTONDBLCLK
   '' Case WM_RBUTTONDOWN
   '' Case WM_RBUTTONDBLCLK
   '' Case Else
 End Select
End Sub

  7、现在将程序保存起来运行看看系统托盘处是否增加了一个本工程的图标。单击此图标,Form1就自动弹出来了。


技术文章快速查找

栏目导航
软件应用
·操作系统 ·杀毒防黑 ·应用软件
·聊天软件 ·网络软件  
Web开发
·ASP ·JavaScript ·CGI
·JSP ·VbScript ·Web服务器
·PHP ·XML  
开发语言
·VB ·VC ·ASP.NET
·Java ·C/C++ ·Delphi
数据库开发
·MySQL ·SQL/Access ·PowerBuilder
·Oracle ·DB2  
网站设计
·Flash ·Dreamweaver ·HTML/CSS
·Fireworks ·FrontPage  
平面设计
·Photoshop ·CorelDraw ·AutoCAD
·FreeHand ·Illustrator ·3DsMAX
媒体动画
·Director ·Authorware ·Maya
·视频处理    


相关软件 产品库推荐
·笔记本 ·台式机 ·服务器
·数码相机 ·手机 ·GPS
·DV摄像机 ·MP3 ·MP4
·CPU ·硬盘 ·内存
·主板 ·显卡 ·显示器
·打印机 ·投影机 ·路由器

好啊,支持一下。...
游客 发表于2008-4-12 15:39:07
对"VB6如何在托盘中写入应用程序图标"的评论 - 快速回贴
内容:
  [完成后可按Ctrl+Enter发布]

百度中 VB6如何在托盘中写入应用程序图标 相关内容
Google搜索中 VB6如何在托盘中写入应用程序图标 相关内容
雅虎中 VB6如何在托盘中写入应用程序图标 相关内容
Sogou搜索中 VB6如何在托盘中写入应用程序图标 相关内容

相关软件 最新回复帖子:

·VB6如何在托盘中写入应用程序图标
·AutoCAD设计实例:小锤头造型
·nesox让电子邮件营销原来如此轻松!
·Photoshop打造色彩绚丽的随机炫光背景
·ASP.NET中实现MSN通知消息功能
·JSP入门初级教程之Actions的使用
·Coredraw表格导入终极解决方案
·主页空间管理系统1.0(六)
·巧用AutoCAD的延伸命令绘精确定长弧线
·没有mysql支持时的替代方案


  相关软件 VB6如何在托盘中写入应用程序图标相关文章
Visual Basic6.0网络编程的五大散手 VB“变态”用法之有用技术和没用指针
VB“变态”用法之高效字串指针类 VB中用第三方控件打造QQ菜单
利用VB函数Dir()实现递归搜索目录 浅议VB6字节数组和字符串的相互转换
VB“超频”秘籍之隐藏的Variant变量 VB中使用水晶报表编程的一种简单方法
提高Visual Basic访问数据库的效率 利用Visual Basic实现木马攻击
用Visual Basic开发绿色软件的探讨 VB“超频”秘籍之给字符串提速
用VB6建立带光栅的超级开始菜单 Visual Basic编程访问WMI对象
在VB中调用CHM 帮助的几种方法 用Visual Basic创建多线程应用程序
Visual Basic创建“五星”级控件 Visual Basic 的常见问题及解答
让Visual Basic应用程序支持鼠标滚轮 将个性化进行到底 VB中打造个性进度条