gpt4 book ai didi

python - 将小部件添加到 qtablewidget pyqt

转载 作者:太空狗 更新时间:2023-10-29 18:20:39 25 4
gpt4 key购买 nike

在qtablewidget中有没有像按钮一样添加的?但是单元格内的日期仍然必须显示,例如,如果用户双击一个单元格,我可以像按钮一样发送信号吗?谢谢!

编辑项():

def editItem(self,clicked):
if clicked.row() == 0:
#go to tab1
if clicked.row() == 1:
#go to tab1
if clicked.row() == 2:
#go to tab1
if clicked.row() == 3:
#go to tab1

表触发器:

self.table1.itemDoubleClicked.connect(self.editItem)

最佳答案

您有几个问题合并成一个...简短的回答,是的,您可以向 QTableWidget 添加一个按钮 - 您可以通过调用 setCellWidget 将任何小部件添加到表格小部件:

# initialize a table somehow
table = QTableWidget(parent)
table.setRowCount(1)
table.setColumnCount(1)

# create an cell widget
btn = QPushButton(table)
btn.setText('12/1/12')
table.setCellWidget(0, 0, btn)

但这听起来不像您真正想要的。

听起来您想对用户双击您的一个单元格使用react,就像他们单击一个按钮一样,大概是为了调出一个对话框或编辑器或其他东西。

如果是这种情况,您真正需要做的就是连接到 QTableWidget 的 itemDoubleClicked 信号,如下所示:

def editItem(item):
print 'editing', item.text()

# initialize a table widget somehow
table = QTableWidget(parent)
table.setRowCount(1)
table.setColumnCount(1)

# create an item
item = QTableWidgetItem('12/1/12')
table.setItem(0, 0, item)

# if you don't want to allow in-table editing, either disable the table like:
table.setEditTriggers( QTableWidget.NoEditTriggers )

# or specifically for this item
item.setFlags( item.flags() ^ Qt.ItemIsEditable)

# create a connection to the double click event
table.itemDoubleClicked.connect(editItem)

关于python - 将小部件添加到 qtablewidget pyqt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12009134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com