2013-06-05 4 views
0

Я использую бета-версию Qt 5.1 на iOS. Я развертываю свое приложение на ipad.Изменение ориентации экрана Qt

Проблемы, с которыми я сталкиваюсь, как сенсорные события воспринимаются и обрабатываются qt. Пока я держу ipad ориентированный прямо (то есть фронтальная камера вверх), все работает нормально. В этой конфигурации, если я касаюсь экрана, координаты точки касания, обнаруженной через mousePressedEvent(QMouseEvent *e), показывают, что, как и ожидалось, начало координат системы находится в верхнем левом углу экрана.

Когда я поворачиваю свой ipad, скажем, влево, чтобы камера была слева, мой ui правильно вращается, так что кнопки, которые у меня есть, выровнены по экрану. Однако, если я ощущаю события касания, как описано выше, происхождение системы координат не изменилось, поэтому теперь оно находится в левом нижнем углу экрана. Из-за этого кнопки действуют так, как если бы они не были привязаны к экрану, но, как если бы они повернулись так же, как я повернул экран (даже если они выровнены в линию). Итак, если я нажимаю на визуализированную кнопку, это не будет ощущайте прикосновение, но это будет, если я коснусь, они были бы, если бы они не изменили ориентацию, как это сделал экран.

Кто-нибудь знает, что может вызвать это и как его можно исправить?

Пожалуйста, спросите, хотите ли вы видеть код. Я не ставил ни одного, поскольку я не знал бы, что может представлять интерес, и мое приложение уже довольно большое.

Спасибо,

Корнелиу

ответ

0

Вы подаете отчет об ошибке на троллей об этом. А также проверьте, нет ли в нем отчета об ошибке.

http://bugreports.qt-project.org/

Для среднего времени вы можете нажать ваши координаты через отображение функции некоторого вида на основе ориентации устройства.

Также, вызывающие `adjustSize()` на виджетах стремятся исправить размер и позиционирование с помощью макетов.

Надеюсь, что это поможет.

Смежные вопросы