qcombobox时分选择
时间: 2023-07-02 09:06:10 浏览: 135
Qt之QComboBox下拉界面带勾选
可以在QComboBox中添加QTimeEdit控件,这样就可以实现时间选择。
首先,在Qt Designer中将一个QComboBox控件拖入窗口,然后将其下拉列表项设置为“时:分”格式的字符串,如下图所示:
![qcombobox时分选择1](https://img-blog.csdnimg.cn/2021050818411743.png)
接着,在QComboBox的currentIndexChanged(int)信号的槽函数中,先清空QComboBox的所有子控件,然后根据用户选择的下拉列表项,添加一个QTimeEdit控件,并将其添加到QComboBox中,如下所示:
```python
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("QComboBox时分选择")
self.setGeometry(300, 300, 400, 300)
self.combo = QComboBox(self)
self.combo.addItems(["时:分"])
self.combo.currentIndexChanged.connect(self.onComboChanged)
def onComboChanged(self, index):
self.combo.clear()
if index == 0:
time_edit = QTimeEdit(self)
time_edit.setDisplayFormat("HH:mm")
self.combo.setLineEdit(time_edit)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
这里设置了QTimeEdit的显示格式为“HH:mm”,即24小时制的时:分格式。在使用时,用户选择“时:分”下拉列表项后,就可以在QComboBox中显示一个QTimeEdit控件,用户可以直接在该控件中选择时间。
阅读全文