لوضع البرنامج داخل صينية النظام

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

default لوضع البرنامج داخل صينية النظام

مُساهمة من طرف Admin في الأحد يونيو 24, 2007 10:46 am

ضع هذا الكود في Modules
Option Explicit

'تعريف الدالة
Declare Function shell_notifyicon Lib "shell32.dll" Alias _
"Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_MBUTTONDBLCLK = &H209
Public Const WM_MBUTTONDOWN = &H207
Public Const WM_LBUTTONUP = &H202
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_RBUTTONDBLCLK = &H206
Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205

Public Const WM_MOUSEMOVE = &H200
Public Const NIF_ICON = &H2
Public Const WM_COMMNOTIFY = &H44

Public Const NIF_MESSAGE = &H1
Public Const NIF_TIP = &H4
Public Const NIM_ADD = &H0
Public Const NIM_DELETE = &H2
Public Const MAX_TOOLTIP As Integer = 64

Type NOTIFYICONDATA
cbsize As Long
hwind As Long
uID As Long
uFlags As Long
uCallbackMessage As Long
hIcon As Long
szTip As String * MAX_TOOLTIP
End Type


' ضع هذا الكود في ملف تموذج
Dim nfIconData As NOTIFYICONDATA

Private Sub Form_Load()

'سيتم اضافة الصورة في صينية النظام
With nfIconData
'مقبض النافذة لتقبل الاحداث
.hwind = Form1.hWnd
'الايقونة التي سوف تضع
.uID = Form1.Icon
'اعطاء الثوابت للاظهار
.uFlags = NIF_ICON Or NIF_MESSAGE Or NIF_TIP
'تتبع احداث الفارة في حدث التحرك للفارة
.uCallbackMessage = WM_MOUSEMOVE
'مقبض الايقون
.hIcon = Form1.Icon.Handle
'النص المنبثق الذي سيطهر عند توقف المؤشر
.szTip = "برنامج صينية النظام" & Chr$(0)
.cbsize = Len(nfIconData)
End With
'استدعاء الدالة
Call shell_notifyicon(NIM_ADD, nfIconData)

End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

'سيتم تتبع احداث الفارة هنا
Select Case (X \ Screen.TwipsPerPixelX)
'عند تحرك الفارة فوقها
Case &H200
'Caption = Val(Caption) + 1
'عند النقر عليها بالفارة
Case &H203
Me.Visible = True
Me.WindowState = vbNormal
'النقر بالزر الايمن
Case &H205
PopupMenu Mnu_File

End Select

End Sub

Private Sub Form_Resize()

If WindowState = vbMinimized Then Me.Visible = False


End Sub

Private Sub Form_Unload(Cancel As Integer)

'تنظيف المقابض بعد الاغق واخفاء الايقونة
Call shell_notifyicon(NIM_DELETE, nfIconData)

End Sub

Private Sub Mnu_File_Close_Click()

Unload Me

End Sub


Private Sub Mnu_File_Max_Click()

Me.Visible = True
Me.WindowState = vbNormal

End Sub


Private Sub Mnu_File_Min_Click()

WindowState = vbMinimized

End Sub

_________________
إذا أعجبك موضوع من مواضيعي فلا تقل شكـراً ...
بل قل الآتـي ::
اللهم اغفر له ولوالديه ولزوجته وابنائه ولأخوانه واخواته ولسائر المسلمين ماتقدم من ذنبهم وما تأخر..
وقِهم عذاب القبر وعذاب النار..
و أدخلهم الفردوس الأعلى مع الأنبياء والشهداء والصالحين ..
واجعل دعاءهم مستجاب في الدنيا والآخرة ..
اللـهم آميـن..اللـهم آميـن..اللـهم آميـن..

اخوكم جاد القرعان
الأردن- الطفيلة
jadquraan@yahoo.com
jad_quraansoft@hotmail.com
00962777765709
avatar
Admin
jadquraan
jadquraan

عدد الرسائل : 125
العمر : 35
تاريخ التسجيل : 19/10/2006

معاينة صفحة البيانات الشخصي للعضو http://jad4vb.lightbb.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى