في ويندوز، كيف يمكنني تعداد والحصول على النص من نافذة الضوابط آخر؟

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

سؤال

وعلى وجه الخصوص أكثر - لدي مؤشر الإطار تطبيق آخر التوالي. يحتوي هذا التطبيق على السيطرة TListControl.UnicodeClass في مكان ما (وأنا أعلم هذا من Winspector). كيف يمكنني، وذلك باستخدام API ويندوز وأن مقبض النافذة، تذهب من خلال جميع العناصر في هذا تحكم قائمة والحصول على النص من كافة العناصر؟

ويمكنك أن تفترض أن اللغة C / C ++، على الرغم من أنني سوف تكون في الواقع باستخدام win32all لالثعبان. أن يشير إلى المكالمات API المناسبة ستكون كبيرة.

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

المحلول

وفوق إجابات خاطئة تماما وحتى لا تعرف ما هو PAS. وقد أجاب على هذا مئات المرات لمدة 20 عاما على عرضها كأول موضوع. يجب استخدام IPC بالطبع (RPM)

وتسأل عن أخبار: //comp.os.ms-windows.programmer.win32 لرمز

نصائح أخرى

وأنت تريد EnumWindows وEnumChildWindows للتعداد. انظر هنا للحصول على أمثلة ومعلومات الاستخدام / التحذيرات.

لنص النافذة، وبمجرد الانتهاء من HWND المناسب، وتريد <لأ href = "http://msdn.microsoft.com/en-us/library/ms633520(VS.85).aspx" يختلط = "نوفولو noreferrer "> GetWindowText بشكل عام، وضبط محددة في API إذا تم تخزين النص في مكان مختلف (على سبيل المثال: الضوابط القائمة). للتحكم معينة، سوف تحتاج إلى معرفة API محددة، وأنه قد لا يكون متاحا على الرغم من دعوات API ويندوز فقط (على سبيل المثال، تسيطر باستخدام الأدوات مالك التعادل يمكن تخزين النص في التطبيق، لا يمكن الوصول إلى Windows).

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