2016-09-02 41 views
1

我知道必須爲elide隱式設置「width」屬性才能工作。但是,我在佈局中有一個Text元素。我想在文本太長時截斷文本。在GridLayout中,如何在文本類型中使用elide在QML文本元素中啓用「elide」屬性,但在GridLayout中啓用

import QtQuick 2.5 
import QtQuick.Layouts 1.1 


Rectangle { 
    width: 100 
    height: 20 

    GridLayout { 
     clip: true 
     anchors.fill: parent 

     rows: 1 

     Text{ 
      text: "veryverylooooooonnnnnnnnnnnggggggggggggggtext" 
      width: 50 

      elide: Text.ElideRight 
     } 

    } 
} 

回答

3

變化width: 50Layout.preferredWidth: 50

import QtQuick 2.5 
import QtQuick.Layouts 1.1 
Rectangle { 
    width: 100 
    height: 20 
    GridLayout { 
     clip: true 
     anchors.fill: parent 
     rows: 1 
     Text { 
      text: "veryverylooooooonnnnnnnnnnnggggggggggggggtext" 
      Layout.preferredWidth: 50 
      elide: Text.ElideRight 
     } 
    } 
} 

結果: enter image description here

相關問題