python怎么用pyqt5建立一个数表和字典的对应关系
时间: 2023-06-12 19:08:28 浏览: 79
可以使用QTableWidget来建立一个数表,使用QMap或者Python的内置字典来建立字典的对应关系。
下面是一个示例代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableWidget, QTableWidgetItem
from PyQt5.QtGui import QColor
from PyQt5.QtCore import Qt
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setGeometry(100, 100, 500, 500)
# 创建一个数表
self.tableWidget = QTableWidget(self)
self.tableWidget.setGeometry(50, 50, 400, 400)
# 创建一个字典
my_dict = {'apple': '苹果', 'banana': '香蕉', 'orange': '橙子', 'grape': '葡萄'}
# 设置数表的行数和列数
self.tableWidget.setRowCount(len(my_dict))
self.tableWidget.setColumnCount(2)
# 遍历字典,将键值对添加到数表中
row = 0
for key, value in my_dict.items():
self.tableWidget.setItem(row, 0, QTableWidgetItem(key))
self.tableWidget.setItem(row, 1, QTableWidgetItem(value))
row += 1
# 设置数表的样式
self.tableWidget.horizontalHeader().setSectionResizeMode(0, QTableWidget.Stretch)
self.tableWidget.horizontalHeader().setSectionResizeMode(1, QTableWidget.Stretch)
self.tableWidget.verticalHeader().setVisible(False)
self.tableWidget.setEditTriggers(QTableWidget.NoEditTriggers)
self.tableWidget.setFocusPolicy(Qt.NoFocus)
self.tableWidget.setSelectionBehavior(QTableWidget.SelectRows)
self.tableWidget.setSelectionMode(QTableWidget.SingleSelection)
self.tableWidget.setAlternatingRowColors(True)
self.tableWidget.setStyleSheet("QTableWidget::item:selected{background-color: %s;}" % QColor(Qt.blue).name())
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
```
在示例代码中,我们首先创建了一个QTableWidget,然后使用一个字典来建立键值对的对应关系,遍历字典将键值对添加到数表中。最后,我们对数表进行了一些样式的设置。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)