【问题标题】:Handle multiple tags in a Text widget when each tag adds a style to the text?当每个标签向文本添加样式时,处理文本小部件中的多个标签?
【发布时间】:2011-05-22 22:21:03
【问题描述】:

我想为文本小部件创建一个工具栏,允许您选择粗体或斜体文本,以及它们的组合(粗体和斜体一起)。

我一直在查看对Advanced Tkinter text box 的回复以及StyledText 小部件的代码,但都没有回答我的问题。

配置标签的基本方式:

txtWidget.tag_configure("bold", font=my_bold_font)
txtWidget.tag_configure("italic", font=my_italic_font)

这意味着您可以将单个字体与单个标签相关联,但似乎没有任何方法(表面上)将标签组合与字体相关联。

继续创建 tag_bind 事件的最佳方法是找出我的标签组合并相应地分配字体的方法,还是有其他方法?

【问题讨论】:

    标签: python text fonts tags tkinter


    【解决方案1】:

    遗憾的是,这是文本小部件的少数弱点之一。如果你想要粗体和斜体,你需要一个带有这两个属性的字体的标签。您可以即时创建新标签,因此这不是一个不可能解决的问题,但是确定范围内的哪些字符需要“粗体”标签,哪些需要“斜体”标签,以及哪些需要一个新的“bold_italic”标签。

    【讨论】:

    • 您有实施过的解决方案吗?
    • @Xenomorph:没有。我已经完成了,但我不知道代码在哪里。我可能是在 Tcl 而不是 Python 中完成的。
    猜你喜欢
    • 1970-01-01
    • 2012-03-20
    • 2017-11-10
    • 2011-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多