2017-11-27 21 views
0

QTableWidget에 포커스가 없으면 유효성을 검사해야 항목 텍스트의 유효성을 검사하고 내 프로그램에 유효하지 않은 텍스트를 변경할 수 있습니다.QTableWidget을 확인하십시오.

+0

가 QItemDelegate를 사용하고 여기에 확인. 검증을 원한다고 말하면, 제가 한 가지 예를들 수 있습니다. – eyllanesc

+0

나는 단지 엔트리 텍스트가 두 자릿수의 16 진수임을 확인하고 싶다. – bril10

답변

0

가능한 용액 대리자를 사용하고, 대리인이 경우에 inputMask와 QLineEdit를 사용하여 검증을 담당하고있다 :

class HexDelegate(QItemDelegate): 
    def createEditor(self, parent, option, index): 
     w = QLineEdit(parent) 
     w.setInputMask("HH") 
     return w 

class App(QWidget): 
    def __init__(self, *args, **kwargs): 
     QWidget.__init__(self, *args, **kwargs) 
     self.setLayout(QVBoxLayout()) 

     # Create table 
     self.tableWidget = QTableWidget(self) 
     self.layout().addWidget(self.tableWidget) 
     self.tableWidget.setRowCount(4) 
     self.tableWidget.setColumnCount(2) 
     self.tableWidget.setItemDelegate(HexDelegate()) 

if __name__ == '__main__': 
    app = QApplication(sys.argv) 
    ex = App() 
    ex.show() 
    sys.exit(app.exec_()) 
+0

고마워. 내 인생을 구 했구나 !! – bril10