QML之Text

QML提供的text顯示文本,只讀顯示不能讀寫。和我們一般的文檔軟件的顯示大同小異,只不過文檔提供了直接設置,這裏我們需要對Text的屬性進行設置,達到我們想要的效果


 Rectangle{
        height: 400
        width: 400
        anchors.centerIn: parent
        Text{
            id:text_test
            width: 200
            anchors.horizontalCenter: parent.horizontalCenter
            clip :true  //是否剪切掉超出顯示範圍的文字,默認false
            text:"Hello World"      //需要顯示的文字
            color: "red"            //文字顏色
            font.family: "Corbel"   //字體
            font.pixelSize: 25      //字體大小設置爲像素
            //font.pointSize: 100     //將字體的大小設置爲點,存在pixelSize設置,本設置無效
            font.bold: true         //是否加粗,默認爲false
            font.capitalization: Font.MixedCase //設置文本大小寫,不使用大小寫,默認值
            //font.capitalization: Font.AllUppercase //全部使用大寫
            //font.capitalization: Font.AllLowercase   //全部使用小寫
            //font.capitalization: Font.SmallCaps       //小寫字母使用小大寫
            //font.capitalization: Font.Capitalize        //第一個單詞第一個字符大寫
            font.italic: true         //設置字體是否斜體樣式,默認false
            font.letterSpacing: 8    //設置字母之間的距離,正數爲增加默認距離,負數爲減少
            font.strikeout: true     //設置是否有刪除線(中間一條線),默認false
            font.underline: true     //設置是否有下滑線,默認false
            //font.weight: Font.Light
            //font.weight: Font.Normal
            //font.weight: Font.DemiBold
            //font.weight: Font.Bold
            //font.weight: Font.Black
            font.wordSpacing: 10      //設置單詞之間的距離
            //horizontalAlignment: Text.AlignRight //右對齊
            //horizontalAlignment: Text.AlignLeft    //左對齊
            //horizontalAlignment: Text.AlignHCenter   //中間對齊
            horizontalAlignment: Text.AlignJustify
            //verticalAlignment:   Text.AlignTop      //上對齊
            verticalAlignment:   Text.AlignBottom     //下對齊
            //verticalAlignment:   Text.AlignVCenter  //中間對齊
            smooth:true        //是平滑
            //style: Text.Normal  設置字體樣式
            //style: Text.Outline
           // style: Text.Raised
            //style: Text.Sunken
            styleColor: "blue" //配合style使用
            //textFormat: Text.AutoText //文本屬性顯示方式
            //textFormat: Text.PlainText
            //textFormat: Text.RichText
            //textFormat: Text.StyledText
            //wrapMode: Text.NoWrap   //換行屬性設置,但需要明確寬度
            //wrapMode: Text.WordWrap    //            
	   //wrapMode: Text.WrapAnywhere
            //wrapMode: Text.Wrap	    
	    //elide: Text.ElideRight //超出顯示範圍的用...代替
            //elide: Text.ElideNone
            //elide: Text.ElideMiddle
            // elide: Text.ElideLeft
	onImplicitWidthChanged:  { //顯示的文本本身的長度發生變化觸發信號
           console.log("implicitWidth = ",text_test.implicitWidth)
        }







        }

        Column{//下面顯示的是text的只讀屬性
            spacing: 5
            y:150
            anchors.horizontalCenter: parent.horizontalCenter
            Text{
                text:"lineCount: " + text_test.lineCount //顯示的行數
                color: "blue"
                font.pixelSize: 25
            }
            Text{
                text:"paintedHeight: " +text_test.paintedHeight //高度
                color: "blue"
                font.pixelSize: 25
            }
            Text{
                text:"paintedWidth: " +text_test.paintedWidth //寬度
                color: "blue"
                font.pixelSize: 25
            }
            Text{
                text:"paintedWidth: " +text_test.truncated
                color: "blue"
                font.pixelSize: 25
            }
        }
    }

注:本文驗證使用的版本是qt4.8,如高版本有差異,歡迎指出

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章