我想以表格的形式显示一些数据。我认为QTableWidget
具有多列。其中一列将包含时间(hh:mm格式)。
我也希望用户编辑任何项目的表格,但与相应的格式。
我能够在QTableWidget
中添加数据,但无法设置时间列的文本格式。
这是我想要实现的,这样用户就可以只编辑hh:mm格式的时间。
如果可能的话,请用python编写您的答案代码。
发布于 2014-12-07 14:24:44
由于您希望用户输入时间日期,我建议以以下方式重用已经存在的QDateTimeEdit类:
dateTime = QDateTimeEdit();
dateTime.setDisplayFormat("hh:mm");
dateTime.setFrame(False);
myTableWidget.setCellWidget(row, column, dateTime);
用户将能够以这种方式在表小部件中编辑“时间数据”。此外,由于可以应用的步骤,它也将是方便的。
如果您真的坚持自己重新发明这一点,您可以使用带有自定义验证器的QLineEdit来反对所需的hh::mm
格式。
dateTime = QLineEdit();
dateTime.setValidator(QRegExpValidator(QRegExp("^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$")));
myTableWidget.setCellWidget(row, column, dateTime);
https://stackoverflow.com/questions/27343100
复制相似问题