أبو نادر قام بنشر أكتوبر 13, 2016 قام بنشر أكتوبر 13, 2016 السلام عليكم هذا فانكشن من الوهله الأولى شعرت بأنه محترم لكن للأسف ما عرفت كيف استدعيه ممكن توضيح عمله وأكواد الاستدعاء والله لا يحرمكم الأجر Option Compare Database Option Explicit Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Const WM_GETICON = &H7F Public Const WM_SETICON = &H80 Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long Public Type POINTAPI X As Long Y As Long End Type Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long Public Const GWL_STYLE = (-16) Public Const WS_VISIBLE = &H10000000 Public Declare Function GetWindowPlacement Lib "user32" (ByVal hWnd As Long, lpwndpl As WINDOWPLACEMENT) As Long Public Const SW_SHOW = 5 Public Const SW_SHOWMAXIMIZED = 3 Public Const SW_SHOWMINIMIZED = 2 Public Const SW_SHOWMINNOACTIVE = 7 Public Const SW_SHOWNA = 8 Public Const SW_SHOWNOACTIVATE = 4 Public Const SW_SHOWNORMAL = 1 Public Const SW_RESTORE = 9 Public Const SW_MINIMIZE = 6 Public Const SW_MAXIMIZE = 3 Public Const SW_HIDE = 0 Public Const SWP_SHOWWINDOW = &H40 Public Const HWND_TOPMOST = -1 Public Const SWP_NOSIZE = &H1 Public Const SWP_NOMOVE = &H2 Public Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long Public Declare Function ShowWindow Lib "user32" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long Public Type RECT Left As Long top As Long Right As Long Bottom As Long End Type Public Type WINDOWPLACEMENT Length As Long flags As Long showCmd As Long ptMinPosition As POINTAPI ptMaxPosition As POINTAPI rcNormalPosition As RECT End Type Const ABS_AUTOHIDE = &H1 Const ABS_ONTOP = &H2 Const ABM_GETSTATE = &H4 Const ABM_GETTASKBARPOS = &H5 Private Type APPBARDATA cbSize As Long hWnd As Long uCallbackMessage As Long uEdge As Long rc As RECT lParam As Long ' message specific End Type Private Declare Function SHAppBarMessage Lib "shell32.dll" (ByVal dwMessage As Long, pData As APPBARDATA) As Long Public Function CursorOnTaskbar() As Boolean Dim curPoint As POINTAPI Dim lngRetCur As Long Dim lngRetTbarPos As Long Dim barData As APPBARDATA lngRetCur = GetCursorPos(curPoint) lngRetTbarPos = SHAppBarMessage(ABM_GETTASKBARPOS, barData) If (lngRetCur <> 0) And (lngRetTbarPos <> 0) Then If (curPoint.X > barData.rc.Left) And _ (curPoint.X < barData.rc.Right) And _ (curPoint.Y < barData.rc.Bottom) And _ (curPoint.Y > barData.rc.top) _ Then CursorOnTaskbar = True End If End If End Function Public Function IsMinimized(hWnd As Long) As Boolean Dim wndPl As WINDOWPLACEMENT Dim lngRetVal As Long lngRetVal = GetWindowPlacement(hWnd, wndPl) If (wndPl.showCmd = SW_SHOWMINIMIZED) Then IsMinimized = True End If End Function Public Function IsVisible(hWnd As Long) As Boolean Dim lngRetVal As Long lngRetVal = GetWindowLong(hWnd, GWL_STYLE) If ((lngRetVal And WS_VISIBLE) = WS_VISIBLE) Then IsVisible = True End If End Function Public Sub bringWindowToFront(hWnd As Long) Call SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_SHOWWINDOW) End Sub
أبو نادر قام بنشر أكتوبر 13, 2016 الكاتب قام بنشر أكتوبر 13, 2016 بلاش توضيح .. كيف استدعيه ؟ وسلامتكم
محمد ايمن قام بنشر أكتوبر 13, 2016 قام بنشر أكتوبر 13, 2016 اخي ابو نادر تحية طيبة هذا الفانكشن وظيفته التعامل مع مقابض النوافذ النشطة و معرفة اذا كانت النافذة المطلوبة مصغرة او نشطة على الشاشة ( هذا ما حللته وربما اكون مخطأ ) ملاحظة هذا الفانكشن لديه نقص في الكود لاحظ ان هذا الكود يتبع الى وحدة نمطية او اجراء غير موجود 9 ساعات مضت, أبو نادر said: Call SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_SHOWWINDOW) بالنسبة الى الاستدعاء صراحة لا فكرة لدي ربما اذا شرحت لي اكثر او ارفقت مثال استطيع التحليل بشكل افضل 1
أبو نادر قام بنشر أكتوبر 14, 2016 الكاتب قام بنشر أكتوبر 14, 2016 هلا اخوي محمد الي شدني اكثر هذا السطر ... ابغى اعرف وش عمله؟ وانا ابحث لقيت هذا المرفق لاحد الاخوه .. وشفت فيه وحدات نمطيه جميله .. بينها modAPIWindow Aziz.zip
ابو جودي قام بنشر أكتوبر 14, 2016 قام بنشر أكتوبر 14, 2016 كل هذه الموديولات خاصة بعمل تصغير للقاعدة بجوار ساعة النظام استاذى الحبيب راجع المرفق مرة اخرى وانظر الى الاكواد فى هذا النموذج انا حذفت لك كل النماذج وتركت لك فقط النموذج الذى يتم استدعاء كل هذه الموديولات من خلاله ولكن للامانه هذه الاكواد بها مشكله القاعدة احيانا يحدث لها تصغير ولا تستطيع استعادتها او اغلاقها او فتحها الا ان قفلتها عن طريق الضغط على الازرار ctrl + alt + delete aziz.rar 2
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.