kivy之Label屬性及文本標記實操學習


關於kivy內label功能有二部分內容,一個是label小部件屬性,另一個是label文本標記屬性,實操練習的效果圖如下:

.

現將label常用的這二類屬性整理如下:

 

 現在我們來進行實操練習,在pycharm里先新建一個項目,然后在項目內新建main.py文件,內容代碼如下:

from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
 
class LabelBoxLayout(BoxLayout):
    def __init__(self,**kwargs):
        super(LabelBoxLayout, self).__init__(**kwargs)
 
        #設置引用時,markup屬性必須設置為真(True、1)
        #將Label文本標記,單擊Lable文本時會觸發綁定的事件,單擊hello文本則不會
        label_ref=Label(text='你好[ref=label]Label[/ref]',markup=True,color=(.9,.2,.1,1))
 
        #綁定觸發事件,回調方法
        label_ref.bind(on_ref_press=self.print_it)
        self.add_widget(label_ref)
 
    #未使用到self,建議設置為靜態方法
    @staticmethod
    def print_it(*args):
        print('print_it已經運行')
 
 
class LabelApp(App):
    def build(self):
        return LabelBoxLayout()
 
if __name__ =='__main__':
    LabelApp().run()

再建一個label.kv文件,內容代碼如下:

<LabelBoxLayout>:
    canvas:
        Color:
            rgba:1,1,1,1
        Rectangle:
            pos:self.pos
            size:self.size
    orientation:'vertical'   #指定布局方向
 
    Label:   #添加一個標簽,[ref]標記的內容是可以做為觸發事件的標記
        text:'[ref="click"]只能[/ref][sub]顯示[/sub][color=#"FFFF00"]字體中[/color]可用的符號'
        font_size:30    #字體大小
        bold:True     #字體加粗
        color:.9,.2,.1,1   #字體顏色
        outline_color:0,0,1    #添加文本輪廓顏色
        outline_width:1       #添加文本輪廓寬度
        text_size:cm(8),mm(20)   #標簽文本框大小
        halign:'right'    #水平對齊方式
        valign:'middle'   #垂直對齊方式
        strikethrough:True   #是否添加刪除線
        shorten:True           #文本長度比文本框大是縮短文本
        shorten_from:'right'   #當shorten:True時,從right右方向縮短文本
        markup:True
        #觸發事件
        on_ref_press:
            print('ref命名的單擊事件已經運行')
            root.print_it()
 
    Label:
    #設置背景
        canvas:
            Color:
                rgba:(.1,.1,.1,.1)
            Rectangle:
                pos:self.pos
                size:self.size
        text:'只能[sup]顯示[/sup]字體中可用的符號'
        font_size:20
        color:.2,.2,.9,1
        bold:True
        text_size:cm(10),cm(2)
        halign:'left'
        valign:'top'
        underline:True   #是否添加下划線
        line_height:2.0  #行高
        markup:True

本文項目源碼文件包可點此下載,下載可自行調試學習。

因有同學問到我的kivy學習資料里支持中文的方法是怎么解決的,我將解決中文的方法鏈接貼在這里,大家去照着做就可以了,很簡單點擊這個鏈接進入:kivy全局中文支持最簡單的解決方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM