Приложение в трее не отображается должным образом

Ниже у меня есть код для фреймворка, с которым я работаю. Проблема, с которой я столкнулся, заключается в том, что значок не будет отображаться в системном трее, пока не будет добавлен закомментированный код. Самое странное, что другие строки кода для свойств notifyicon1 будут работать. Может кто-нибудь, пожалуйста, помогите мне понять, что происходит?

 Public Class Main

Public WithEvents notifyicon1 As New NotifyIcon

Private Sub Main_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Width = 1200
    Height = 850
    ShowIcon = True
    Me.Text = "V1.0.0.0"

    ' icon
    Icon = My.Resources.icon_4

    'set the form properties
    BackColor = Color.White

    Dim start As New startup()

End Sub

Private Sub Main_Resize(sender As Object, e As EventArgs) Handles MyBase.Resize
    If Me.WindowState = FormWindowState.Minimized Then
        notifyicon1.Visible = True
        Me.Hide()
        Icon = My.Resources.icon_4
        notifyicon1.Visible = True
        notifyicon1.BalloonTipText = "Hi from right system tray"
        notifyicon1.ShowBalloonTip(500)

        'With notifyicon1
        '    .Icon = My.Resources.icon_4
        '    .Visible = True
        '    .ShowBalloonTip(500)
        'End With


    End If
End Sub

Private Sub NotifyIcon1_DoubleClick(sender As Object, e As MouseEventArgs) Handles notifyicon1.DoubleClick
    Me.Show()
    Me.WindowState = FormWindowState.Normal
    notifyicon1.Visible = False
End Sub

End Class

1 ответ

Решение

Как указал Ханс, вам нужно установить свойство Icon notifyicon1, что вы делаете в операторе With, но не в приведенном выше коде.

Изменить Icon = My.Resources.icon_4 с notifyicon1.Icon = My.Resources.icon_4, так как вы, кажется, нигде не используете свойство Icon.

Другие вопросы по тегам