الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف يظهر نموذج تعليمات محل مؤشر الماوس

مغلق
بدأه مصلح الحريصي في 9 يناير 2002 · 7 رد · 548 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة الكرام

السلام عليكم ورحمة الله وبركاته

لدي نموذج عليه مربع تسمية يحتوي على ما يقارب أربعة أسطر تعليمات وأرغب أن يظهر هذا النموذج عند النقر على زر الفأرة الأيسر على أن يظهر هذا النموذج مكان مؤشر الفأرة مثل الذي يظهر عند استخدام زر ما هذا في الآلة الحاسبة0

ولكم شكري وتقديري

#2

الأخ 5060

تقصد أن تجعل هذا النموذج يظهر في مكان الفارة كتعليمات ولكن المشكلة لم تذكر ماهو الإجراء الذي يجعل هذا النموذج يظهر ماهو الحدث ؟ وهل ستجعل الحدث يتكرر في لكل نموذج في القاعدة ؟ أم في كل كائن على النموذج حتى تظهر التعليمات المرتبطة بهذا الكائن ؟

ولك تحياتي

#3

دائماً سباق لفعل الخير 0

نعم أريد أن اجعل هذا النموذج يظهر في المكان الذي يظهر فيه مؤشر الفأرة " سهم االفأرة " كتعليمات على كل كائن على النموذج 0

والحدث يكون عند نقر زر الفأرة الأيمن0

#4

الأخ 5060

في رأيي لو تعمل ملف تعليمات hlp وتربط النماذج والكائنات به لكان افضل وأسهل .

بالنسبة لطلبك في الوحدة النمطية العامة ضع :

Option Compare Database
Declare Function MoveWindow Lib "user32" _
(ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, _
ByVal nWidth As Long, ByVal nHeight As Long, _
ByVal bRepaint As Long) As Long

Declare Sub mouse_event Lib "user32" _
(ByVal dwFlags As Long, ByVal dx As Long, _
ByVal dy As Long, ByVal cButtons As Long, _
ByVal dwExtraInfo As Long)
Declare Function GetCursorPos Lib "user32" _
(lpPoint As POINTAPI) As Long


Type POINTAPI
    x As Long
    y As Long
End Type

Function GetX() As Long
    Dim n As POINTAPI
    GetCursorPos n
    GetX = n.x
End Function

Function GetY() As Long
    Dim n As POINTAPI
    GetCursorPos n
    GetY = n.y
End Function

وفي حدث إظهار النموذج ضع :

Dim n As POINTAPI
Dim العرض As Long
Dim الطول As Long

GetCursorPos n
DoCmd.OpenForm "اسم النموذج الذي عليه التعليمات"
العرض = Screen.ActiveForm.InsideWidth / 15
الطول = Screen.ActiveForm.InsideHeight / 15
MoveWindow Screen.ActiveForm.hwnd, n.x, n.y, _
العرض, الطول, False

علما أن رقم 15 تقريبي وقد تحتاج الى تكبيره أو تصغيره .

وأما النموذج الذي عليه التعليمات فضع في حدث عند عداد الوقت :

DoCmd.Close

وفي الفاصل الزمني ضع عدد ثواني مناسب كل 1 ثانية تساوي 1000

وفي حدث عند النقر للنموذج ضع :

DoCmd.Close

وأزل الحدود منه واجعله مشروط ومنبثق وبدون أزرار تنقل أو محددات سجلات .

ولك تحياتي

#5

الأخ /ابو حمود

لك مني الشكر ولإمتنان سأفعل ما ذكرت وأخبرك بالنتيجة

وفقك الله

#6

لو سمحت يا بوحمود فصل شي او اشرح الطريقه لو سمحت :(

#7

أخي الحبيب أبو حمود كيف حالك أرجو أن تكون بخير (f)

أخي الكريم لو ترفق مع ردك مثال أظن أن الصورة ستكون أوضح ولك مني كل التحية والسلام عليكم و رحمة الله و بركاته

#8

أخي الفاضل ابو حمود

أشكرك فقد أعطيتنا الكثير الكثير من علمك الغزير وعملت بقول المصطفى صلى الله عليه وسلم " خيركم من تعلم العلم وعلمه " أو كما قال صلى الله عليه وسلم 0

فعلاً طريقة ممتازة جداً جداً وأنا وعدتك أن أجرب الكود وأخبرك بالنتيجة سواءً سلباً أو إجاباً وأسف جداً لتأخري فلأمر ليس يسيراً بنسبة لي فقد أخذ مني وقتاً طويلاً حتى تمكنت من ذلك ولم أريد أن أثقل عليك بالآسئلة أحببت أن أكرر محاولاتي لأن في كثر المحاولات فائدة بالنسبة لي فهي تعلم وإختبار 0

شكرا شكرا من أعماق قلبي0

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…