منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود يعمل مشاكل
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم

كتبت كود اظهار ايقونة في شريط المهام

المهم شريط المهام مقسم الى 4 اقسام (قسم زر ابدأ ، قسم ايقونات الاختصارات ، قسم البرامج المفتوحة او المجلدات المفتوحة ، قسم مصغرات ايقونات البرامج المفتوحة )

و في القسم الثالث لا تظهر ايقونة ثابتة لبرنامجي بل تتحرك في بعض الحالات لذا هل يمكن ازالة هذه الايقونة ثم اعادة تحميلها
هذا هو الكود

كود :
Private Declare Function Shell_NotifyIcon Lib _
"shell32.dll" Alias "Shell_NotifyIconA" _
(ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long
Private Type NOTIFYICONDATA

cbSize As Long

hWnd As Long

uID As Long

uFlags As Long

uCallbackMessage As Long

hIcon As Long

szToolTip As String * 64

End Type

Dim notify As NOTIFYICONDATA

Private Const NIM_ADD = &H0
Private Const NIM_DELETE = &H1
Private Const NIF_ICON = &H2
Private Const NIF_MESSAGE = &H1
Private Const NIF_TIP = &H4
''''''''''''''''''''''''''''''''
Private Const WM_MOUSEMOVE = &H200
Private Const WM_LBUTTONUP = &H202
Private Const WM_RBUTTONUP = &H205


Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

Call delicon

End Sub

Private Sub picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single)

If Button = 2 Then

Me.PopupMenu ee

End If

End Sub

Public Sub seticon()

With notify

.cbSize = Len(obj)

.hWnd = Picture1.hWnd

.uID = 1&

.uFlags = NIF_TIP Or NIF_MESSAGE Or NIF_ICON

.uCallbackMessage = WM_MOUSEMOVE

.hIcon = Picture1.Picture

.szToolTip = "vb4arab.com"

End With

Shell_NotifyIcon NIM_ADD, notify

End Sub



Public Sub delicon()

Shell_NotifyIcon NIM_DELETE, notify

End Sub

و في الفورم لود :

delicon
Call seticon