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

Subcalssing for the WM_SYSCOMMAND using ssubtmr6

مغلق
بدأه msayed2004 في 28 مارس 2007 · 8 رد · 571 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله و بركاته , فى مشروعى الحالى Yomna Snapshooter أنا بستخدم بستخدم الـ Subcalsser ده ssubtmr6 و ده علشان الـ Scroll-able forms و عايز أعمل Subclass على حاجة تانية لرسالة WM_SYSCOMMAND طبعا مش حلوه أنى أستعمل أكتر من Subclasser فى نفس المشروع فنوعا ما أنا مجبر عليه المهم لما بعمل Subclassing للرسالة دى كل الـ Form بتقف فى أعلى يسار الشاشة و تتعطل كل حاجة فيها حتى زر أغلاقها , لو حد عنده فكرة عن الـ Subclasser ده ممكن يدلنى على المشكلة علما بأنى ماشى فيه طبيعى بنفس طريقة المؤلف الأصلى :

Implements ISubclass

Private Sub Form_Load()
AttachMessage Me, Me.hwnd, WM_SYSCOMMAND
End Sub

Private Sub Form_Unload(Cancel As Integer)
DetachMessage Me, Me.hwnd, WM_SYSCOMMAND
End Sub

Private Property Let ISubClass_MsgResponse(ByVal RHS As EMsgResponse)
'
End Property

Private Property Get ISubClass_MsgResponse() As EMsgResponse
Debug.Print CurrentMessage
ISubClass_MsgResponse = emrConsume
End Property

Private Function ISubclass_WindowProc(ByVal hwnd As Long, ByVal iMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
If iMsg = WM_SYSCOMMAND Then
	Select Case wParam
		'The rest of the code
	End Select
End If
End Function

تم تعديل هذه المشاركة بواسطة msayed2004 في 28 مارس 2007 في 23:42

#2

فهمت عليك اخ msayed2004 ... وفعلا مسألة انشاء Subclasser لكل فورم مش مضبوطه و المسألة تحتاج لتفكير 028.gif بصراحة انا في بالي فكرة ولا ادري ان كانت تصلح ام لا ... وهي ان نقوم بتطبيق Subclasser على فورم معين ويتم محاكاة بواسطة LinkTopic

تم تعديل هذه المشاركة بواسطة HnHn في 29 مارس 2007 في 00:56

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#3

ممكن توضح أكتر.

علما بأن الـ Subclasser ده قادر فعلا على تحمل الـ Subclassing من أكتر من Form

ملحوظة أخرى نسيت أقولها فى الأول و هى أنى لا أستعمل الـ DLL و لكن الملفات التالية بمشروعى :

subclass.bas

subclass.cls

isubclass.cls

لا أعتقد أن ده هيفرق فى الموضوع بس علشان تبقى الظروف واحده لوحد حب يجرب و يساعدنى

تم تعديل هذه المشاركة بواسطة msayed2004 في 29 مارس 2007 في 01:01

#4

بصراحة انا مجربتش انشاء اكثر من Subclass لاكثر من فورم لكن وحتى الان لا اتصور وجود مشكلة فى حالة الكنترولز

ولكن اعتقد ان تعطل الفورم فى اجراء Callwindowproc

لكن انت عندك structure اسمه EMsgResponse ارجو توضيحه

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#5

موجودة بالـ iSubclass.cls

#6

سيبك من الفكرة :wacko: كنت اريد ان استمد كل صفات الفورم وشفراته واسنادها الى فورم اخر ولكن بهذه الصورة

قد نصادف الكثير من الاخطاء وما نريده هو عدم الخطأ :lol: .... قد تحتاج لتفكير حول كيفية اسناد متغيير يرمز للفوم المستدعاء ...

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#7

ده أنت عايز تخليها زى الـ Inheritance يعنى , لا صعب فى الفيجوال باسيك 6

#8
اقتباس
ده أنت عايز تخليها زى الـ Inheritance
بالزبط ... بس اعتقد ان المسالة بطول كذا

خلينا منها .. وراح نصل لحل افضل

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#9

أتحلت يا شباب , ببساطة يجب عمل DetachMessage للتأكيد قبل ما نعمل AttachMessage و بالتالى يكون الكود بحدث الـ Form_Load كالتالى :

DetachMessage Me, Me.hwnd, WM_SYSCOMMAND

AttachMessage Me, Me.hwnd, WM_SYSCOMMAND

شكرا لكل من حاول المساعدة -waf

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

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