如何在任务栏上显示图标,但不显示在窗体本身上?

5
如果我在表单属性中使用“ShowIcon”,则会在我的表单左上角获得图标(我不想要那个),但是我会在任务栏中获得自己的图标。
如果我关闭“ShowIcon”,那么就没有图标出现在表单上,但是我会在任务栏上获得默认的winform图标。
我尝试改变边框样式,但是“FixedToolWindow”创建了一个不理想的外观,与其他表单的风格不匹配。
1个回答

4

我找到了一个解决办法。如果在窗体加载完成之后使用Me.ShowIcon = False,那么它将会显示在任务栏上,但不会显示在程序中。

一种实现方式是在窗体加载结束时启用/开始一个计时器,然后在计时器触发时执行Me.ShowIcon = False

具体代码如下:

Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
    Me.ShowIcon = False
    Timer1.Enabled = False
End Sub

Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
     Timer1.enabled = True
End Sub

Timer1 的间隔为 100 毫秒(这个很好用)。如果你只是在 Form1_Load 中将 ShowIcon 设为 True,会显示一个奇怪的图标(不是程序原来的图标)。这就是为什么我们要使用计时器的原因。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接