2017-10-21 4 views
0

私はこのQMLの項目で今停止しています。それは、画面の左側に固執しているような単純な2x3グリッドです。 anchors.centerIn: parentを適用すると、GridViewが中心になりますが、TopMarginプロパティは無視されます。もし私がこれについて助けを得ることができれば、それは非常に高く評価されるだろう。私はleftMarginを適用することができることを知っている:それには、それは一種の醜いです。このGridViewをウィンドウの中央に表示させるにはどうしたらいいですか?

GridView { 

    id: gridView 
    interactive: false 
    clip: true 

    // anchors.centerIn: parent 
    anchors.left: parent.left 
    anchors.top: titleBarContainer.bottom 
    anchors.topMargin: 20 
    anchors.right: parent.right 

    width: 400 
    height: parent.height 

    currentIndex: -1 

    cellWidth: 200 
    cellHeight: 200 

答えて

0
... 

anchors.top: titleBarContainer.bottom 
anchors.topMargin: 20 
anchors.horizontalCenter: parent.horizontalCenter 

width: 400 
height: parent.height 

... 
+0

それはそれをやったように見える..私は愚かだったと思います。ありがとうございました! – Cain

+0

私は注意しなければならないが、幅の値に '400'の代わりにparent.widthを使用すると、左に固執し続けます。なぜ分かりますか? – Cain

+0

これは、GridViewが親の幅全体をカバーするようにするため、水平方向の中央アンカーが無意味になります。 GridViewの内部では、左上隅から項目をレイアウトします。 – jpnurmi

関連する問題