pyqt5 在表格中创建10个控件并可以电机
时间: 2024-05-03 17:21:43 浏览: 139
Python中PyQt5/PySide2的按钮控件使用实例
以下是一个示例代码,它在表格中创建10个QLineEdit控件,并为每个控件连接了一个单击事件:
```
import sys
from PyQt5.QtWidgets import QApplication, QTableWidget, QTableWidgetItem, QLineEdit
from PyQt5.QtCore import Qt
class MyTable(QTableWidget):
def __init__(self, rows, columns):
super().__init__(rows, columns)
# 设置表格不可编辑
self.setEditTriggers(QTableWidget.NoEditTriggers)
# 创建10个QLineEdit控件并添加到表格中
for i in range(10):
line_edit = QLineEdit()
self.setCellWidget(i, 0, line_edit)
# 为每个控件连接单击事件
line_edit.clicked.connect(self.on_line_edit_clicked)
def on_line_edit_clicked(self):
# 获取当前单击的控件
line_edit = self.sender()
# 获取当前控件所在的行和列
row = self.currentRow()
column = self.currentColumn()
# 在控制台中输出当前控件的行和列
print('Clicked on row {}, column {}'.format(row, column))
if __name__ == '__main__':
app = QApplication(sys.argv)
table = MyTable(10, 1)
table.show()
sys.exit(app.exec_())
```
在这个示例中,我们首先创建了一个MyTable类,继承自QTableWidget。在MyTable的构造函数中,我们设置了表格不可编辑,并创建了10个QLineEdit控件,并将它们添加到表格中。我们还为每个控件连接了一个单击事件,当用户单击任何一个控件时,就会在控制台中输出该控件所在的行和列。
在main函数中,我们创建了一个MyTable对象,并显示它。当我们单击任何一个QLineEdit控件时,就会在控制台中输出该控件所在的行和列。
阅读全文