【发布时间】:2012-02-02 12:53:09
【问题描述】:
我在带有 Tk 接口的 Windows 7 上使用 Ruby 1.9.3。在下面的简单示例中,如果我单击一个按钮,GUI 将返回一个“??????”字符串而不是显示的“привет”。是否可以取回输入的实际 unicode 字符串?
#!/usr/bin/env ruby
# coding:utf-8 vi:et:ts=2
require 'tk'
TkRoot.new.tap { |o|
$edit = TkEntry.new( o ).tap { |o|
o.pack( :side => 'left' )
o.insert( 0, "привет" )
}
TkButton.new( o, :text => "click me" ).tap { |o|
o.pack( :side => 'left' )
o.bind( '1' ) {
## In this place i want unicode, but got garbage :(
puts( $edit.get().encoding.name )
puts( $edit.get().inspect )
}
}
o.mainloop()
}
【问题讨论】: