我需要让QTextEdit只能接受数字,空格和换行符(输入/返回)。我该怎么办?
答案 0 :(得分:4)
QTextEdit小部件在这里没有提供太多帮助。您需要通过过滤其输入事件和粘贴数据来从外部限制它接受的内容。您很可能需要对小部件进行子类化。
重新实施event
方法并过滤掉进来的击键。将允许的击键传递给QTextEdit::event
。确保适当地过滤按键和按键释放(如果有的话)。
这也可以通过在小部件上安装事件过滤器来完成。
重新实施insertFromMimeData
和/或canInsertFromMimeData
,以删除有问题的字符或禁止粘贴非数字输入。