您试图在按下PyQt5时更改按钮的文本。 我有一个填充的表,每行都有按钮。 最初,按钮应该显示“播放”,按下按钮应该显示“暂停”。 在
我用以下方法填充表单和手柄按钮并按下。 defpopulate_table(self,total,my_songs ) :
self.create_rows(total )
btn_press=0
forrowinrange (总) :
forcolinrange(4) :
self.tablewidget.setitem(row,0,Qt widgets.qtable widgetitem (str (my _ songs [ row ].get _ title ) ) ) )
. strip () () ) )
self.tablewidget.setitem(row,1,Qt widgets.qtable widgetitem (str (my _ songs [ row ].get _ artist ) ) ) )
. strip () () ) )
self.tablewidget.setitem(row,2,Qt widgets.qtable widgetitem (str (my _ songs [ row ].get _ album ) ) ) )
. strip () () ) )
self.tablewidget.setitem(row,3,Qt widgets.qtable widgetitem (str (my _ songs [ row ].get _ length ) ) ) )
. strip () () ) )
#self.tablewidget.setitem(row,4,Qtwidgets.qpushbutton('play ' ) )
self.BTN _ play=qpushbutton (' play ',self ) )。
self.BTN _ play.clicked.connect (lambda : self.handle _ play _ button ) self.BTN_press ) )
self.table构件. setcellwidget (row,4,self.btn_play ) )。
EFHandle_play_button(self,btn_press ) :
button=Qt widgets.qapp.focus构件(
# or button=self.sender (
index=self.table构件. indexat (button.pos ) )
if index.isValid () :
self.btn_press =1
print(index.row )、index.column (BTN _ press ) ) ) )。
self.BTN_play.settext(Pause ) #This does not work
这能告诉我按了哪个按钮。 这样,我就可以继续播放这首歌了。 以下示例显示here。 尝试使用setText,但没有看到可见的文本更改。 你有什么建议吗? 谢谢你! 在
编辑:
表示我的错误。 无论按哪个按钮,最后创建的按钮都会暂停。 index.row (可以在中按索引按钮切换吗? 在