1
나는 4 개의 열이있는 QTableWidget
입니다. 사용자가 처음 3 개의 정수만 삽입하고 4 번째의 정수는 삽입 할 수 있기를 바랍니다.QTableWidget, 숫자 만 입력 가능
위임을 사용하여이 작업을 수행 할 수 있다고 생각하지만 관련 예제를 찾지 못했습니다 (일부만 QDateTimeEdit
).
어떻게해야합니까?
나는 4 개의 열이있는 QTableWidget
입니다. 사용자가 처음 3 개의 정수만 삽입하고 4 번째의 정수는 삽입 할 수 있기를 바랍니다.QTableWidget, 숫자 만 입력 가능
위임을 사용하여이 작업을 수행 할 수 있다고 생각하지만 관련 예제를 찾지 못했습니다 (일부만 QDateTimeEdit
).
어떻게해야합니까?
QItemDelegate
에 대한 설명서를 살펴보십시오. 그것이 어떻게 사용될 수 있는지에 대한 꽤 좋은 설명을 제공합니다.
대리인이 자신 만의 사용자 지정 편집기를 제공 할 수 있으므로 QLineEdit
을 사용하고 setValidator()
을 사용하여 유효성 검사기를 설정하는 것이 좋습니다. 이 상황에서는 QIntValidator
과 QDoubleValidator
클래스가 완벽 할 것입니다.
감사합니다. 한 가지 질문 만 : 열의 유효성 검사기를 설정하려면 어떻게해야합니까? 나는 QLineEdit을 위해 그것을했지만 column을 위해서는하지 않았다. – Giuseppe
유효성 검사기는 편집기'QLineEdit'에 설정됩니다. 델리게이트가 셀의 편집자를 처리하기 때문에 다른 열에 다른 델리게이트를 설정할 수 있습니다. 단지'QAbstractItemView :: setItemDelegateForColumn()'을 사용하십시오. – swongu
위의 편집자 대신 스핀 상자와 이중 스핀 상자를 사용할 수있는 방법을 제안합니다. 그들은 여전히 입력 할 수 있고 이미 유효성 검사기를 가지고 있으며 사용자가 신속하게 값을 증가/감소시킬 수 있습니다. –