أين هو مورد Win32 لمؤشر الماوس لسحب المقسمات؟

StackOverflow https://stackoverflow.com/questions/47538

  •  09-06-2019
  •  | 
  •  

سؤال

أقوم بإنشاء عنصر تحكم/عنصر واجهة مستخدم مخصص لنظام Win32 وأرغب في تغيير المؤشر إلى رمز "مقسم" أفقي عند المرور فوق خط عمودي معين في عنصر التحكم.أي:أريد سحب هذا الخط العمودي (شريط التقسيم) إلى اليسار واليمين (الغرب والشرق).

من بين مؤشرات النظام (OCR_*)، المؤشر الوحيد المنطقي هو OCR_SIZEWE.لسوء الحظ، هذا هو المؤشر الكبير والغريب الذي يستخدمه النظام عند تغيير حجم النافذة.بدلاً من ذلك، أبحث عن المؤشر الذي يبلغ طوله حوالي 20 بكسل وعرضه حوالي 3 أو 4 بكسل مع وجود سهمين صغيرين يشيران إلى اليسار واليمين.

يمكنني بسهولة رسم هذا وإدراجه كمورد في طلبي ولكن المؤشر نفسه منتشر جدًا لدرجة أنني أردت التأكد من أنه لا يفتقد شيئًا ما.

على سبيل المثال:عند استخدام آلية السحب والإسقاط COM (CLSID_DragDropHelper، IDropTarget، إلخ) لديك حق الوصول ضمنيًا إلى رمز "السحب" (مربع صغير أسفل المؤشر).لم أر ثابت OCR_* واضحًا لهذا الرجل ...وبالمثل، إذا لم أتمكن من العثور على مؤشر التقسيم هذا تمامًا، فأنا أتساءل عما إذا كان جزءًا من كائن COM أو أي شيء آخر في Win32 lib.

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

المحلول

توجد جميع أنواع الرموز والمؤشرات والصور المستخدمة عبر واجهة مستخدم Windows والتي لا تكون متاحة للعامة لبرامج الجهات الخارجية.بالطبع، لا يزال بإمكانك تحميل الوحدة التي توجد بها واستخدامها، ولكن ليس هناك ضمان حقًا بأن برنامجك سيستمر في العمل بعد تحديث/ترقية النظام.

تشمل الخاصة بك.آخر شيء تريده هو إضافة تبعية إضافية عبر مؤشر صغير جدًا.

نصائح أخرى

كان لي هذه المشكلة بالضبط.عندما راجعت بعض التعليمات البرمجية القديمة الخاصة بالمقسم العمودي معتقدًا أن لدي إجابة سهلة، اتضح أنني قمت ببناء وتحميل المورد الخاص بي:

SetCursor( LoadCursor( ghInstance, "IDC_SPLITVERT" ));

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

هذه واحدة من تلك الأوقات التي أود أن أكون مخطئًا فيها، حيث كنت أتمنى أن يكون هناك رمز نظام لهذه الوظيفة.

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