QTableWidget + QPushButton 问题
QTableWidget + QPushButton Issue
我正在使用 PyQt5,我正在尝试通过按下按钮来更改活动单元格。所以我有一个 QLineEdit 供人们输入一个项目,此时按钮采用该值并将其放置在 0,0 位置,就像它应该的那样。我试图让 clicked.connect 也更改保存行号的变量,但它似乎不起作用。这是我的 btn_clk:
代码
def btn_clk(self):
row = 0
col = 0
entry = QTableWidgetItem(self.mod_num.text())
self.form_widget.setCurrentCell(row, col)
self.form_widget.setItem(row, col, entry)
row += 1
self.mod_num.clear()
当然,对于第一个项目,我有 0,0 坐标,我得到 QLineEdit 框中的值,我设置当前单元格,然后设置项目。这是我不知道出了什么问题的地方。我有行变量 += 1 将其在 QTableWidget 中向下移动一行我将其设置为总共 34 行。
我知道我现在没有办法阻止它,但我更担心它现在不会改变我的手机位置。任何帮助将不胜感激。
更新:
扩展我想要的内容:
例子
使用提供的示例图片,我想做的是当有人在 QLineEdit 框中输入内容并按下提交按钮时,方法 def btn_clk 将 QLineEdit 中的文本放入单元格 0,0 .然后当用户在 QLineEdit 中输入一个新项目并再次按下提交按钮时,它会将 QLineEdit 中的文本放入单元格 1,0 的下一行。
我希望这能更好地解释我想要完成的事情。
每次调用 btn_clk
函数时,都会将值重置为 row = 0
、col = 0
.
你应该做的是初始化__init__
中的变量:
def __init__(self, other parameters):
# some code
self.row = 0
self.col = 0
然后在插槽中:
def btn_clk(self):
entry = QTableWidgetItem({your text})
self.form_widget.setItem(self.row, self.col, entry)
self.row += 1
# another some code
我正在使用 PyQt5,我正在尝试通过按下按钮来更改活动单元格。所以我有一个 QLineEdit 供人们输入一个项目,此时按钮采用该值并将其放置在 0,0 位置,就像它应该的那样。我试图让 clicked.connect 也更改保存行号的变量,但它似乎不起作用。这是我的 btn_clk:
代码def btn_clk(self):
row = 0
col = 0
entry = QTableWidgetItem(self.mod_num.text())
self.form_widget.setCurrentCell(row, col)
self.form_widget.setItem(row, col, entry)
row += 1
self.mod_num.clear()
当然,对于第一个项目,我有 0,0 坐标,我得到 QLineEdit 框中的值,我设置当前单元格,然后设置项目。这是我不知道出了什么问题的地方。我有行变量 += 1 将其在 QTableWidget 中向下移动一行我将其设置为总共 34 行。
我知道我现在没有办法阻止它,但我更担心它现在不会改变我的手机位置。任何帮助将不胜感激。
更新:
扩展我想要的内容:
例子
使用提供的示例图片,我想做的是当有人在 QLineEdit 框中输入内容并按下提交按钮时,方法 def btn_clk 将 QLineEdit 中的文本放入单元格 0,0 .然后当用户在 QLineEdit 中输入一个新项目并再次按下提交按钮时,它会将 QLineEdit 中的文本放入单元格 1,0 的下一行。
我希望这能更好地解释我想要完成的事情。
每次调用 btn_clk
函数时,都会将值重置为 row = 0
、col = 0
.
你应该做的是初始化__init__
中的变量:
def __init__(self, other parameters):
# some code
self.row = 0
self.col = 0
然后在插槽中:
def btn_clk(self):
entry = QTableWidgetItem({your text})
self.form_widget.setItem(self.row, self.col, entry)
self.row += 1
# another some code