0

私のSymbian(Belle)main.qmlには標準があります:

window.pageStack.depth <= 1 ? Qt.quit() : window.pageStack.pop()

戻るツールバーボタンを押すと、押すとアプリが閉じます。デバイスのメニューボタンを押す場合のように、アプリが押されたときにアプリを最小化(または非表示)するために何を使用すればよいか知りたいですか?解決策を探しましたが、何も正しく見えません。

編集:

qmlでどのように実装すべきかを示していただけませんか。

4

3 に答える 3

1

Symbianでメインの未亡人を正しい方法で最小化するには、以下の手順を実行する必要があります。ステップ1:QDeclarativeViewのラッパーを作成する

#include <QtCore/QPointer>
#include <QtDeclarative/QDeclarativeView>
#ifdef Q_OS_SYMBIAN
#   include <e32base.h>
#   include <w32std.h>
#   include <apgwgnam.h>
#   include <coedef.h>
#   include <coecntrl.h>
#   include <coemain.h> 
#endif

class View : public QObject {
    Q_OBJECT
    // ...
public:
    // ...
    Q_INVOKABLE void showMinimized() {
#ifdef Q_OS_SYMBIAN
        RWindowGroup* wg = &CCoeEnv::Static()->RootWin();
        wg->SetOrdinalPosition(-1);
#else
        view_->showMinimized();
#endif
    }
    // ...
private:
    QPointer<QDeclarativeView> view_;
};

次に、このビューをQMLコンテキストプロパティとして使用します。

QScopedPointer<QDeclarativeView> view(new QDeclarativeView());
view->rootContext()->setContextProperty("applicationWindow", new View(view.data(), view.data()));

次に、QMLコードは次のようになります。

tools: ToolBarLayout {
    ToolButton {
        flat: true
        iconSource: "qrc:/images/tbar-back.svg"
        onClicked: applicationWindow.showMinimized()
}
于 2012-05-21T06:21:09.133 に答える
0

mainwindow.setWindowState(Qt::WindowMinimized)アプリを最小化するために使用します。

于 2012-05-20T14:00:24.653 に答える
0

QMLViewerの「lower()」関数を使用することになりました

QObject::connect(rootObject, SIGNAL(hide()), &viewer, SLOT(lower()));

次に、qmlのlower()関数に接続し、戻るボタンが押されたときに呼び出します。ShowMinimisedを使用すると、ウィンドウが消えます。

于 2012-05-26T16:00:37.047 に答える