美文网首页
Python GTK 3 GUI 编程 -- 006 标签(La

Python GTK 3 GUI 编程 -- 006 标签(La

作者: bokerr | 来源:发表于2020-12-09 23:58 被阅读0次

    这篇文章讲下标签

    什么是标签

    就是显示文字的控件


    Label

    创建

    self.label = Gtk.Label()

    使用

    简单的使用就是制定label属性 显示文字, 当然如果只讲这个, 显得文章太..., 所以今天讲下pango markup language(一种标记语言, 使文字显示特定的样式)


    官方链接

    基本标签

    • <markup></markup> 根标签, 可以省略
    • <span></span> 基本标签, 可以自定样式, 他的基本属性下面单独列出
    • 下面的标签是为了提供方便用的
    • <b></b> 粗字体
    • <big></big> 大字体 相当与 <span size="larger"></span>
    • <s></s> 删除线(从文字中间穿过的线)
    • 下脚标
    • 上脚标
    • <tt></tt> 等宽字体
    • <u></u> 下划线

    span的属性

    • font-desc 字体的描述 比如 "Sans Italic Hack 16" 表示Sans类型 Hack字体 斜体 字号16. 基本格式就是 "族 字体样式 字体名称 字号"
    • font-family 字体族, 可以为"normal", "sans", "serif" 或 "monospace"
    • face 等于 font-family
    • size 大小 可以为'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large' 或者是一个相对的词 比如 smaller larger
    • style 字体样式 可以为 normal, oblique, italic
    • weight 字体重量 可以为'ultralight', 'light', 'normal', 'bold', 'ultrabold', 'heavy' 或者是数字的重量, 以磅为单位
    • variant 变形, 可以为normal 或 smallcaps(全小写)
    • stretch 宽度 可以为 'ultracondensed', 'extracondensed', 'condensed', 'semicondensed', 'normal', 'semiexpanded', 'expanded', 'extraexpanded', 'ultraexpanded' (其实就是两个单词加描述 condensed 压缩的, expanded 扩展的, 加上 semi 半, extra 额外的, ultra 超级的)
    • foreground 前景色 aka 字体颜色 可以为16进制颜色或者颜色名 例如red blue lightblue等等
    • background 背景色
    • underline 下划线样式 'single'(单线), 'double'(双线), 'low'(更低的下划线), or 'none'(无)
    • rise 上下脚标 可以为subscript(下脚标), positive(正常) for superscript(上脚标).
    • strikethrough 删除线 true 或false
    • fallback 标识如果当前字体缺失该字符, 是否用其他字体代替这个字符 true或false
    • lang 语言 例如 "zh-cn" "en-us" "zh-tw" "zh-hk"

    这个很简单, 就不示范了

    标签 和 pango

    首先创建一个label, 然后调用set_markup(pango_string)方法来使用pango, pango_string就是pango字符串

    label的常用属性

    • label 设置标签 str
    • angle 旋转角度 接受float 类型
    • ellipsize 省略 当空间不足时省略 接受Gtk.ElipisizeMode

    Gtk.ElipisizeMode 枚举
    NONE = 0 无
    START = 1 从开始省略
    MIDDLE = 2 中间
    END = 3 结尾

    • justify 对齐 接受Gtk.Justification

    LEFT = 0 左对齐
    RIGHT = 1 右对齐
    CENTER = 2 中间对齐
    FILL = 3 填充

    • max_width_chars 标签的最长长度 int
    • selectable 是否可以用鼠标选择 bool
    • single_line_mode 是否只有一行 bool
    • warp 是否自动换行如果太长 bool
    • wrap_mode 接受Pango.WrapMode

    Pango.WrapMode 枚举
    WORD = 0 如果空间不够一个单词, 换行
    CHAR = 1 不够一个字符
    WORD_CHAR = 2 不够一个单词时, 退回到 一个不够一个字符的地方, 然后换行 (基本没什么用)

    方法

    set_markup(str) 设置pango
    其他的基本都是设置属性和获取属性的方法, 不多说了

    下篇文章讲下Expander

    相关文章

      网友评论

          本文标题:Python GTK 3 GUI 编程 -- 006 标签(La

          本文链接:https://www.haomeiwen.com/subject/nvbawktx.html