2013-10-10 18 views
2

我可以隨意移動「指示器」,但「按鈕」和「DiagValue」我似乎只能移動到不同的行......我需要移動到不同的列或不同的「x」。在QML中的行中間隔項目?

enter image description here

Row{ 
      spacing: table.rowSpacing 

      Button { 
       width: 60 
       //x: 100 //this does NOTHING! 
       //y: 159 
       text: tr_NOOP("Help") 

       onClicked: { 
        app.dialogs.message.title = trans("Water Status") 
        app.dialogs.message.body = trans("Rate is not met.") 
        app.dialogs.message.show(); 
       } 
      } 

      Indicator { 
       x: -50 
       //y: 159 
       ok: false 
      } 

      DiagValue { 
       MeasuredValue { 
        id: lowFlowValueText 
        rawValueUnit: "gpm" 
        unit: "gpm" 
        precision: 1 
       } 
       label: trans("Water Flow Setting") 
       value: lowFlowValueText.text 
      } 
    } 
+1

什麼是table.rowSpacing?是否定義了相關性? – jbh

回答

1

我想如果你在行中設置適當的間距並水平對齊,它應該看起來像你所需要的。

Row { 
    spacing: table.rowSpacing 
    anchors.horizontalCenter: parent.horizontalCenter 
    ... 
} 

而且你也不需要提供x值當你的元素都在裏面,因素將決定基於間距和個別兒童的寬度x值。

0

甲將定義的水平位置,並且它包含的元素的水平範圍(大小)。手動嘗試替換連續元素的xwidth沒有意義,實際上它會生成警告。

當然,您可以覆蓋內的垂直位置。

您的元素必須提供合理的默認尺寸,並且必須明智地對調整大小作出反應,因此如果沒有看到您如何定義組件(Button,Indicator,DiagValue),就無法確切地說出問題所在。對於股票控制,它工作正常。

+0

修改'width'不會造成任何問題。 「行」不會修改它。 'RowLayout'呢。 – GrecKo