كيف يمكنني الحصول على القيمة (سلسلة) من التحديد الحالي في مربع تحرير وسرد?

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

  •  20-08-2019
  •  | 
  •  

سؤال

كيف يمكنني الحصول على القيمة (سلسلة) من التحديد الحالي في مربع تحرير وسرد?

(غير صحيح الفهرس)

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

المحلول

وربما تكون هناك طريقة أفضل (بلدي MFC هو صدئ قليلا)، ولكن يبدو أن يجب أن تكون قادرا على استدعاء CComboBox::GetLBText()، فمررها التحديد الحالي باستخدام CComboBox::GetCurSel().

نصائح أخرى

عادي القديمة GetWindowText يعمل أيضا.

تحرير: كما ajryan ، GetWindowText فعلا لا العمل في CBN_SELCHANGE معالج, لأن الاختيار الجديد اتخذت تأثير ولكن نافذة النص لم يتم تحديث مع النص الجديد اختيار عندما WM_COMMAND يتم إرسالها.

استخدم GetLBText، ويمر في مؤشر والكائن CString.

وتحرير: بطيئة جدا

وCB_GETCURSEL عودة مؤشر عدد صحيح CB_GETLBTEXT يعود سلسلة في CB_GETCURSEL

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