السلام عليكم
ما هى الطريقة المتبعه لكى أخرج نافذة برنامج إلى سطح المكتب موجودة فى SystemTray
يعنى البرنامج ليس له أى نافذة ظاهرة أستطيع الوصول إليها لكى أقوم بتكبيرها و إظهارها على سطح المكتب
السلام عليكم
ما هى الطريقة المتبعه لكى أخرج نافذة برنامج إلى سطح المكتب موجودة فى SystemTray
يعنى البرنامج ليس له أى نافذة ظاهرة أستطيع الوصول إليها لكى أقوم بتكبيرها و إظهارها على سطح المكتب
لا إله إلا الله محمد رسول الله
アッラー以外に神はなし。ムハンマドはアッラーの使徒である
هل البرنامج برنامجك؟
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
لو أنك تتحدث عن البرنامج الذى أريد أن أظهره فلا ليس خاص بى (لم أكتبه)!
لا إله إلا الله محمد رسول الله
アッラー以外に神はなし。ムハンマドはアッラーの使徒である
الذي أقوم به عادة لإنشاء notify icon هو إعداد NOTIFYICONDATA structure.
في المعامل uCallbackMessage منها تقوم بتحديد الرسالة المسؤولة عن إعادة البرنامج للظهور من الـ systray (مثلاً WM_USER+1 أو أي شئ آخر باعتبار أن الرسائل هذه ليست مخصصة لشئ معين بحد ذاته)
في النهاية نستخدم Shell_NotifyIcon() لكي نرسل المعلومات اللازمة للـ taskbar ليقوم بإظهار وتسجيل الـ notify icon.
هذه العملية تتم داخل WM_CREATE.
الآن أصبح للنافذة رسالة تتنبه بها.
* في الحالة التي لا يكون البرنامج خاص بك،
عليك أن تحدد إن كان للبرنامج أساساً نافذة يمكن إظهارها (بعض البرامج فقط قائمة تظهر في systray لتنفيذ مهمات معينة فقط)
عليك أن تحدد الطريقة التي "يخفي" بها البرنامج نفسه.
و إن كان هناك رسالة يمكن استخدامها مثلاً لجعله يظهر من خلال إرسالها SendMessage إلى نافذة البرنامج بعد الحصول على handle.
* هذه تصوراتي، لم أنفذ العملية من قبل ربما يكون هناك شئ أسهل.
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
المعاملات الموجودة فى الstruct كثيرة
ما هى المعاملات التى يجب ضبطها من أجل أن أقوم بإظهار نافذة البرنامج :wacko:
لا إله إلا الله محمد رسول الله
アッラー以外に神はなし。ムハンマドはアッラーの使徒である
في بداية المشاركة كنت أتكلم فقط عن تسجيل notify icon
ولكي تكون على اطلاع كيف يتم الأمر وبالتالي تعلم ما الأمور التي قد يلزمك معرفتها لإظهار النافذة لاحقاً (مثل uCallbackMessage)
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…