2024年4月1日发(作者:)

VB6.0将窗体最小化到系统托盘区

使用说明:共有两个方法,经个人实际测试(环境:xpsp3 vb6.0)第二个控件法最有效

果,第一个方法在启动时确实在右下角,但是弹出后再次最小化就跑到屏幕左下角了,无

法最小化,不知道是啥原因,希望大家改进代码。 本人力荐第二种小巧有效简单的方法。

-------------------------------------------------------------------------------------

---------------

方法一

托盘,亦即程序最小化后程序图标隐藏到屏幕右下角的任务栏里。这种最小化方法

比普通的最小化节约空间,因此备受欢迎,很多软件都具有这样的功能。在VB中,可用

API函数来实现托盘功能,但比较复杂,不太好操作。

相对而言采用一种非常简单易行的方法:控件法,才是最适合最方便的。下面要使

用已被微软封装好的控件:csystray1(名称可自定)。

说到控件,大家可能要皱眉头了:去哪找呀?放心!这个控件就躺在你的VB安装盘

里(目录为:COMMONTOOLSVBUNSUPPRTSYSTRAY)!不过,得处理一下:请

在Tool文件夹里查找一个名叫Systray的目录,将它拷贝到硬盘,用VB打开该目录下的

工程,必要的话可作些改进(如更换图标、添加功能等),然后编译成ocx控件,可以随意

命名。为方便使用起见,最好编译到WindowsSystem目录下。好了,现在我们就可以

在我们的程序中使用此控件来轻松实现托盘功能了。vb中添加控件的方法就不用我说了

吧?

-------------------------------------------------------------------------------------

---------------------

控件的属性和事件浅析:

该控件的InTray属性是用来设置是否显示在托盘中,True为显示在托盘,False为

不显示;

该控件的TrayIcon属性是在托盘中显示的图标式样;

该控件的TrayTip属性是鼠标移动到该控件上面时,显示的提示文字;

该控件的重要事件是几个我们常用的鼠标事件:按下、放开、移动、双击,编程时就

是利用这些事件达到在任务栏中控制程序的目的。

-------------------------------------------------------------------------------------

------------------

源代码如下:

'使程序最小化时显示到系统托盘

Private Sub Form_Resize()

If State = 1 Then '如程序为最小化则——