qttable小部件,单元格文本只作为十六进制

qttable小部件,单元格文本只作为十六进制

问题描述:

我有一个表小部件。我无法弄清楚如何改变每个单元格的输入格式。此刻,我希望它只接受十六进制值。我怎么做?我正在使用Qt设计器4.8.6和PyQt4qttable小部件,单元格文本只作为十六进制

任何帮助表示赞赏。

,可以使用自定义委托QRegexValidator来完成:

你必须创建一个自定义的委托,你覆盖的方法:

QWidget createEditor (self, QWidget parent, QStyleOptionViewItem option, QModelIndex index) 

所以它会返回一个QLineEdit的那有一个QRegexValidator,包含正确的模式。

要设置正则表达式validor的QLineEdit的使用:

setItemDelegate (self, QAbstractItemDelegate delegate) 

setValidator (self, QValidator) 

最后,利用设置在表格中的自定义委托