У меня проблема. Я создаю полноэкранную форму в Delphi XE2. Затем я запускаю свое приложение на планшетном ПК с Windows 7 на борту, где разрешение экрана 1024x600. Потом переворачиваю планшет (сейчас разрешение 600х1024) и у меня возникли проблемы с элементами на форме (некоторые кнопки за экраном и т.д.). Могу ли я настроить проект так, чтобы при повороте планшета моя форма не вращалась?
Как я могу зафиксировать форму для планшета в Delphi XE2?
comment
Вы используете VCL или FMX?
- person Jerry Dodge   schedule 03.12.2014
comment
Я использую ВКЛ. Это в принципе?
- person 0xFF   schedule 04.12.2014
comment
Подход к решению вашей проблемы очень важен для используемой вами структуры. Это как покупать запчасти для Шевроле, а не запчасти для Форда.
- person Jerry Dodge   schedule 04.12.2014
comment
Хорошо я понял. Если я использую VCL, могу ли я исправить свою ситуацию?
- person 0xFF   schedule 04.12.2014
comment
Почему бы вам не решить настоящую проблему? Никто не любит читать вещи сбоку. Почему бы вам не заставить вашу программу работать с вращением, а не против него?
- person David Heffernan   schedule 04.12.2014
comment
Потому что владелец этой программы не хочет видеть нашу программу в портретной ориентации. Я сказал ему, что нам нужно адаптировать программу для этой ситуации (я думаю, что это необходимо и логично), но он не хочет это слушать. Вот почему я хочу знать, возможно ли это в теории? И как я могу это сделать?
- person 0xFF   schedule 04.12.2014
comment
Для Windows 8 существует SetDisplayAutoRotationPreferences. .
- person Sertac Akyuz   schedule 04.12.2014
comment
Это здорово, но мне нужна поддержка всех систем от Windows XP SP3. Но спасибо.
- person 0xFF   schedule 05.12.2014
comment
Вам нужно пересмотреть свои ожидания
- person David Heffernan   schedule 05.12.2014
Ответы (1)
Согласно этой статье MSDN вы можете обнаружить, что экран был повернут прослушивание сообщения WM_DISPLAYCHANGE
.
Однако тогда вы столкнетесь с серьезной проблемой. Теперь вам нужно нарисовать все ваше приложение с поворотом на 90 градусов. Это займет совсем немного времени. Честно говоря, я не верю, что это приемлемое решение. Я подозреваю, что жизнеспособные варианты:
- Измените свою программу так, чтобы она работала в обеих ориентациях, или
- Настройте устройство так, чтобы оно всегда находилось в нужной вам ориентации.
person
David Heffernan
schedule
04.12.2014
Спасибо, это полезная информация. Я не знаю, как я могу вращать кнопки, заметки и т. Д., Надеюсь, Google мне поможет.
- person 0xFF; 05.12.2014
Ты не сможешь этого сделать
- person David Heffernan; 05.12.2014