VB.NET有很多值得学习的地方,这里我们主要介绍VB.NET制作透明窗体,包括介绍轻松编写托盘程序托盘程序作为一类特殊的窗体等方面。
窗体是Windows应用程序的基础。新一代的开发工具Visual Basic.Net为设计制作窗体提供了更多简单而丰富的方法,无需再求助于复杂而易错的API函数,我们就可以轻松制作多种特效窗体。
1、VB.NET制作透明窗体,VB.NET可以轻松制作出任一透明度的窗体:我们只要在窗体的“属性”窗口中,将 Opacity 属性设置为一个介于 0.0(完全透明)与 1.0(完全不透明)之间的值就可以了:
- Dim frm As FrmTrans = New FrmTrans()
- frm.Opacity = 0.5
- frm.ShowDialog()
2、轻松制作始终位于最上层的窗体在VB6中,要制作一个始终位于最上层的窗体我们只能求助于令人头痛的API函数。然而在 .NET 中,我们只要简单设置窗体的 TopMost 属性就可实现同样效果了!例如:
- Dim frm As frmTopMost = New frmTopMost()
- frm.TopMost = True
- frm.Show()
3、VB.NET制作透明窗体,如果要编写一个不让别人发现的隐藏程序,制作透明窗体就是必须实现的***步。窗体的可见性通常由 Visible 属性控制。但是,如果希望 Windows 应用程序的主窗体在应用程序启动时透明窗体,您将会发现将它的 Visible 属性设置为 False 的方法无效,窗体总会自己显示出来(这是因为,启动窗体的生存期决定了应用程序的生存期)。虽然如此,我们还是可以通过简单将应用程序的启动设置为一个模块,从而从窗体的生存期分出应用程序的生存期,VB.NET制作透明窗体。在下面这个例子中,窗体在特定的时间内自动隐藏:
1).在 Visual Basic 中,右击项目并选择“添加模块”以将模块添加到 Windows 应用程序。
2).在已添加的模块(或类)内,创建可作为项目启动对象的 Main 函数:
- Sub main()
- Dim f1 As New Form1()
- f1.Visible = False
- While Hour(Date.Now) < 15
- ‘如果当前时间早于15点,窗体自动隐藏
- Application.DoEvents()
- End While
- f1.ShowDialog()
- End Sub
4、轻松编写托盘程序托盘程序作为一类特殊的窗体,其快捷图标显示在系统托盘中,窗体本身则隐藏透明窗体。在.NET之前版本的VB中编写托盘程序是十分困难的,但是VB.NET提供的新的NotifyIcon组件却使VB初学者也能轻松编写一个这样的程序:新建“Windows应用程序”,设置主窗体 Opacity属性为0,FormBorderStyle属性为None,ShowInTaskbar属性为False,这样窗体将在启动后隐藏。在窗体上放置一个NotifyIcon组件NotifyIcon1,一个ContextMenu(弹出菜单)组件ContextMenu1,并根据需要为 ContextMenu1添加菜单项。
设置NotifyIcon1的ICON属性,这个图标就是应用程序出现在系统托盘中的快捷图标;设置NotifyIcon1的Text属性为“VB.NET托盘程序”,这就是鼠标移动到托盘图标时弹出的文字说明;设置NotifyIcon1的 ContextMenu属性为ContextMenu1,也就是右键单击快捷图标时的弹出菜单为ContextMenu1.OK,按F5运行!
【编辑推荐】