2011-11-15 3 views
1

QML 화면 요소의 screen.heightscreen.width 속성을 사용하여 http://doc.qt.nokia.com/qt-components-symbian/qml-screen.html 크기 조정 기능을 사용하여 크기를 조정할 수있는 Qt 앱에서 앵커를 사용할 수 있습니다.QML 화면 요소 사용 방법

이상하게도 사용 방법을 찾을 수 없습니다. screen.height 또는 Screen.height을 사용하면 변수 오류를 찾을 수 없습니다. 설명서에 다음과 같이 표시됩니다.

화면이 screen이라는 컨텍스트 속성으로 표시됩니다. QML에서 Screen 객체를 인스턴스화하는 것은 이 아니지만 context 속성을 통해 액세스되는 화면은 이어야합니다.

내 질문을 설명 할 수도 있지만 Qt를 처음 접했을 때 나는 그것이 무엇을 의미하는지 모르겠다. 누군가 내 바보 같은 질문으로 나를 도울 수 있다면 제발?

답변

2

설정 한 전체 화면을 사용하면 내 루트 개체의 크기가 조정되므로 5 시간 후에 루트 개체와 관련된 값을 사용하도록 내 앱을 다시 작성한다는 것을 알았습니다.

0

Qt Creator 2.2.1을 사용하는 경우 main.cppviewer.showFullScreen();을 사용하십시오. QmlApplicationViewer이 아닌 자동입니다 이전 버전에서

, 나는이 QDesktopWidget 화면과 해당 크기를 얻을하는 데 사용되는 다음 코드

QDesktopWidget *screen = QApplication::desktop(); 

QRect rect = screen->screenGeometry(-1); 



int screenHeight = rect.height(); 

int screenWidth = rect.width(); 



delete screen; 



QDeclarativeView *view = new QDeclarativeView; 

if(screenHeight > screenWidth) 

    view->setSource(QUrl("qrc:/StopWatchP.qml")); 

else 

    view->setSource(QUrl("qrc:/StopWatchL.qml")); 



QObject *parentObject = qobject_cast<QGraphicsObject *> (view->rootObject()); 

parentObject->setProperty("width",screenWidth); 

parentObject->setProperty("height",screenHeight); 

을 사용하여 생성.

화면 높이가 더 높으면 세로 모드 용으로 설계된 QML 파일을로드하고 그렇지 않으면 가로 모드로로드합니다.