我试图实现QLineEdit的文本,无论用户输入什么类型都是大写字母。我发现了几种解决方案,但他们都没有在Ruby中工作。总之我有QLineEdit的对象searchEdit和验证码:Qt QLineEdit红宝石自定义验证
class UpcaseValidator < Qt::Validator
def validate(input,pos)
input.upcase!
Qt::Validator::Acceptable
end
end
...
def initialize(parent = nil)
uppercaseValidator = UpcaseValidator.new;
searchEdit.setValidator(uppercaseValidator)
...
validate方法被正确触发,只要在输入字段的用户类型,但它是没有得到大写。在我看来,在验证中更改输入变量不会传播回searchEdit对象。
感谢您的帮助,甚至指出我关于Qt Ruby绑定的一些好文档。
对不起,我很困惑是downwote因为我看不出有任何理由。除非一个downvoter留下至少简短的评论,这不是很有帮助。 – gorn 2012-05-18 16:07:39