2011-11-15 32 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ファイル、またはランドスケープモード用のQMLファイルを読み込みます。

関連する問題