سؤال

ولدي السيطرة NotifyIcon الذي يظهر في علبة النظام. كيف يمكنني العثور على الموقع (س، ص) من أيقونة على الشاشة؟

والشكر

هل كانت مفيدة؟

المحلول

وأنت لا تستطيع ذلك. وليس من الصعب الحصول على مقبض نافذة للعلبة النظام، GetClassName () بإرجاع "ToolbarWindow32"، اسم الفئة من سيطرة مشتركة شريط الأدوات القياسي. حذار أن نظام تشغيل 64 بت اثنين منهم. ثم يمكنك إرسال رسائل إليها مثل TB_GETBUTTONINFO. رئيس شنق المنبثقة هي أنك لن تعرف ما زر ID لاختيار ومعلومات عاد لا يتضمن موقف زر.

ما هو للأفضل، وأزرار تتحرك حول دون وجودك قادرا على تأمين لهم.

نصائح أخرى

وفي الواقع يمكنك أن تفعل هذا، وهنا هو الرمز الذي يظهر لك كيف وأكثر من ذلك بكثير.

في أي حدث ماوس من NotifyIcon، ببساطة ننظر Control.MousePosition، وهذا يحتوي على (س، ص) من الفأرة. والشيء نفسه يمكن القيام به لوضع لContextMenu على شكل / التحكم بالضبط حيث تم النقر على شكل / للسيطرة على استخدام هذه (س، ص) القيم.

وخير مثال على كل من هذه هنا هو:

والمزيد هنا: http://code.msdn.microsoft.com/TheNotifyIconExample

وبعد رحلة طويلة من التجربة والخطأ، وتطوير بلدي إعلام رمز محدد، أنا وضعت وسيلة للعثور على أفضل رمز الموقف، حتى الآن على ما يرام، حتى رأيت هذا المشروع المدهش من قبلzhwang <أ href ل = "https://github.com/rzhw/SuperNotifyIcon" يختلط = "نوفولو"> SuperNotifyIcon . هذا المشروع له ثلاث طرق لتحديد رمز الإعلام، بدءا من دقيقة (مثل تطوير بلدي) للاستخدام الجديد في ويندوز 7 API. هذه هي إجابة محددة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top