【问题标题】:Tkinter - Underlining button textTkinter - 下划线按钮文本
【发布时间】:2016-03-13 00:37:18
【问题描述】:

按钮文本下划线选项不起作用。这是我尝试过的:

    boldFontOpts = tkFont.Font(weight='bold')
    self.boldButton = Button(self.toolbarFrame, text='B', command=self.boldfunc, 
        width=bWidth, height=bHeight)
    self.boldButton['font'] = boldFontOpts
    self.boldButton.grid(sticky=W, padx='4', row=1, column = 0)

    self.underlineButton = Button(self.toolbarFrame, text='U', command=self.underlinefunc,
        width=bWidth, height=bHeight)
    underlineFontOpts = tkFont.Font(self.underlineButton, self.underlineButton.cget('font'))
    underlineFontOpts.configure(underline=True)
    self.underlineButton.configure(font=underlineFontOpts)
    self.underlineButton.grid(sticky=W, padx='3', row=1, column = 1)

用于下划线按钮(不起作用)的代码来自: Underline Text in Tkinter Label widget?

我还将粗体按钮的代码(有效)用于下划线按钮,但是当 weight='bold' 替换为 underline=1underline=True 并且所有适当的变量名称等时它不起作用改变(显然)。

那么,这个按钮文字怎么加下划线呢?

附加信息: - 在 Mac 上 - 蟒蛇 3 - 着色 8.5

编辑: 我添加了这两行:

font = tkFont.Font(font=self.underlineButton['font'])
print(font.actual())

在终端显示'underline': 1,但仍不显示下划线。

【问题讨论】:

  • 是的,我会补充问题

标签: python button tkinter


【解决方案1】:
tkinter.Button(self, text='Reset',relief='flat',font=('Verdana', 9,'bold','underline'))

【讨论】:

  • 请查看How to write a good answer。不鼓励仅使用代码的答案,因为它们没有解释如何解决问题。您应该更新您的答案以解释它的作用以及它如何解决问题。
【解决方案2】:

当您创建按钮时,请尝试执行以下操作:

button = Button(window, text="Sample", font= "Verdana 10 underline")

然后将按钮的字体设置为带下划线的样式。

希望我能帮上忙!

【讨论】:

  • 仍然不显示下划线,如果我更改您的代码并输入font="Verdana 10 bold" 它会变为粗体。
  • 嗯,我猜是因为您使用的是 Mac,请尝试查看一些 tkFonts 文档,对不起,我没有太多帮助!我无法真正探究您的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-21
  • 1970-01-01
  • 2011-04-08
  • 2011-08-19
相关资源
最近更新 更多