سؤال

وأنا تطوير تطبيق لالجيب. عندما يبدأ التطبيق SetScreenOrientation وظيفة مخصصة (270) ويسمى التي تدور الشاشة. عند إغلاق التطبيق وSetScreenOrientation وظيفة (0) ويسمى الذي يعيد اتجاه الشاشة.

وهذه الطريقة لا يتم استعادة اتجاه الشاشة إذا كان المستخدم يقلل من الطلب وهذا أمر غير مقبول.

لا أحد يعرف أين (في أي معالجات الأحداث) يجب أن يتم استدعاء SetScreenOrientation (الباحث زاوية) لتعيين اتجاه الشاشة على بدء التطبيق، استعادة التوجه على تقليل، تعيين التوجه على تعظيم واستعادة التوجه على وثيقة؟

والحقيقة أنا لا أعرف أي معالج الأحداث يعالج تصغير وتكبير الحدث.

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

المحلول

والرسالة الصحيحة هي WM_SIZE ، ولكن نقاط الجواب Daemin ل خاطئ WM_SIZE موضوع التعليمات. تحقق من wParam. كن حذرا كما يمكن تكبير النافذة ولكن مخفية.

نصائح أخرى

والانتقال من بلدي ويندوز CE تجربة يجب التعامل معها إما WM_SIZE الرسائل WM_WINDOWPOSCHANGED . إذا كنت تعمل على الجيب أود أن أقترح عليك إلقاء نظرة على الرسالة WM_WINDOWPOSCHANGED أولا لأنني لست متأكدا من WM_SIZE ديه المعلمات الصحيحة التي تحتاجها.

WINDOWPOS هيكل الرسالة WM_WINDOWPOSCHANGED نلقي نظرة على عضو الأعلام، SWP_SHOWWINDOW على وجه التحديد وSWP_HIDEWINDOW.


ووإصدار محدد من الرسائل التي كنت بحاجة الى ان ننظر في تختلف مع ما هو نظام التشغيل الذي تستخدمه. هو مبني على الجيب PC OS ويندوز CE 3.0 (وأقل)، في حين يتم الآن بنيت ويندوز موبايل على نظام التشغيل Windows CE 5.0 (حتى ويندوز موبايل 6)، ولكن بنيت أيضا على نظام التشغيل Windows CE 4. <لأ href = "HTTP: // www.pocketpcfaq.com/wce/versions.htm "يختلط =" نوفولو noreferrer "> (المصدر)

وحتى مجرد إلقاء نظرة تحت القسم المختص في MSDN لنظام التشغيل الذي كنت تكتب ل.

وأنا لا أعرف ما هذه تسمى في العالم C ++، ولكن في .NET Framework ضغط الحدث تغيير الحجم نموذج الطلب الخاص بك سوف يتم استدعاؤها عند تصغير / تكبير النافذة، ثم في رمز الحدث هل تحقق حالة الإطار خاصية النموذج لمعرفة ما إذا كان لها الحد الأدنى أو mazimized.

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

وانها حقا يتوقف على المنصة، ولكن كنت اذهب مع WM_WINDOWPOSCHANGED أو OnShow. انها ليست WM_SIZE .. وهذا واحد لا يلقى دائما على جميع المنابر. وكاسيو لا يلقون الحدث حجم عندما كنت تتوقع لهم. TDS والقيام سيمبول تكنولوجيز.

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

ولقد حصلت على منصة هنا (تم حجب الاسم لحماية ... حسنا لي) الذي أزرار اليمين واليسار .. عند الضغط عليها، وكنت تتوقع أن تكون قادرة على التقاط VK_LEFT، VK_RIGHT .. أنت " د يكون خطأ. تحصل في الواقع '؛' أو ':'. كيف أن للركلة في السراويل.

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