无法在Tk中更改字体大小

时间:2010-03-20 11:59:22

标签: ruby tk

我第一次尝试使用Tk在Ruby中创建GUI。我从众多网络教程中复制了一个代码片段,并尝试更改其中一个标签的字体,但似乎没有任何内容影响文本的呈现方式。

以下是代码:

require 'tk'

root = TkRoot.new('title'=>'MCIS')

defaultFont = TkFont.new("weight"=>'bold', "size"=>20)

Lbl = TkLabel.new(root) do
    text "Boooo"
    borderwidth 5
    font defaultFont
    foreground  "red"
    relief      "groove"
    grid('column'=>3, 'row'=>0)
end

Tk.mainloop()

我看到标签的所有参数的效果,但不是字体。我试图改变大小,重量,给出不同的姓氏,只留下一个参数;什么都行不通 - 字体保持默认状态。令人惊讶的是它没有报告任何错误,一切看起来都很好。也许这是版本问题?我运行这些:

  • Linux Centos 5
  • Tk 8.4.13
  • Ruby 1.8.5
  • ruby​​-tcltk 1.8.5

另外,不知道它是否重要,我是通过WinXP机器的Xming运行的。

1 个答案:

答案 0 :(得分:4)

当我运行上面的代码时,它在我的linux桌面上按预期工作,并带有连接的显示器。如果我不得不猜测,我会说Xming的字体支持非常有限,可能只提供一些位图(读取:不可缩放)字体。

所以,我会说代码是正确的,问题与X服务器配置有关。