كيفية تغيير نافذة صاحب باستخدام مقبض
سؤال
أنا تريد أن تجعل من .صافي شكل العلوي شكل آخر الخارجية التطبيق (لا .صافي ذات الصلة ، نقية Win32) لذلك يبقى فوق ذلك Win32App ، ولكن ليس بقية التطبيقات قيد التشغيل.
لدي مقبض Win32App (تقدمها Win32App نفسه), و لقد حاولت Win32 SetParent() وظيفة, عبر P/الاحتجاج في C#, لكن بعدها بلدي .صافي شكل يحصل محصورة في Win32App و هذا ليس ما أريد.
المحلول
أعتقد أنك تبحث عن أن P/الاحتجاج SetWindowLongPtr(win32window, GWLP_HWNDPARENT, formhandle)
نصائح أخرى
نعم!لقد P/استدعاء استيراد SetWindowLongPtr (وهو x64 آمنة).و باستخدام عاكس بحثت على شكل.مالك المنشأة ( أيعلى get_Owner(نموذج القيمة) طريقة ) و تمكنت من تغيير المالك مع
SetWindowLongPtr(childHdl, -8, OwnerHdl)
كنت أبحث ما -8 (0xFFFFFFFFFFFFFFF8) يعني قبل أن ما بعد الحل هنا لكن جويل بالفعل إلى ذلك.
وذلك بفضل!
لا تنتمي إلى StackOverflow