PyQt5 ComboBox 想不通
PyQt5 ComboBox can't figure out
美好的一天!
上周我开始学习Python,与其他语言相比,我很惊讶它是多么简单易懂,但我想不通一件事。
我从一个网站上抓取了 table(NBA 球队最近 5 场比赛的统计数据),它每天都会更新。
其中有 30 行 table(30 支 NBA 球队)和 19 列(统计数据,如得分、篮板、盖帽等)。
I want to put 30 Team Names in ComboBox Widget and when A Team is chosen, I want it to show data of that specific team (These 19 columns).显示的数据将在 QTableWidget 中。
class Window(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
comboStatsText = QLabel('Home Team', self)
comboStatsText.move(15, 10)
comboStatsBox = QComboBox(self)
comboStatsBox.move(15, 30)
#Combo Box Data
comboStatsBox.addItem(name)
comboStatsBox.addItem(name1)
我已成功进入选择 A 队的阶段,table 小部件弹出并显示数据,但如果我再次选择另一个队,它不会改变。我已经查过激活后如何更改它,但我做不到。
我查了一些带有组合框索引的东西,不明白如何实现它。会是这样吗?
if index(of combobox) = 1(对应的团队) then
显示该团队的数据?
我希望你明白了:/我真的很不擅长解释事情,而且英语不是我的母语。非常感谢任何帮助或建议,谢谢!!
您需要为您的选择事件编写一个函数来接收来自组合框的信号。也许是 activated
信号。然后你需要清除现有的tablewidget并写入你的新数据。
像这样:
combostatsbox.activated.connect(self.load_team)
def load_team():
self.team_table_widget.clear()
# Set your values now
美好的一天!
上周我开始学习Python,与其他语言相比,我很惊讶它是多么简单易懂,但我想不通一件事。
我从一个网站上抓取了 table(NBA 球队最近 5 场比赛的统计数据),它每天都会更新。 其中有 30 行 table(30 支 NBA 球队)和 19 列(统计数据,如得分、篮板、盖帽等)。
I want to put 30 Team Names in ComboBox Widget and when A Team is chosen, I want it to show data of that specific team (These 19 columns).显示的数据将在 QTableWidget 中。
class Window(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
comboStatsText = QLabel('Home Team', self)
comboStatsText.move(15, 10)
comboStatsBox = QComboBox(self)
comboStatsBox.move(15, 30)
#Combo Box Data
comboStatsBox.addItem(name)
comboStatsBox.addItem(name1)
我已成功进入选择 A 队的阶段,table 小部件弹出并显示数据,但如果我再次选择另一个队,它不会改变。我已经查过激活后如何更改它,但我做不到。
我查了一些带有组合框索引的东西,不明白如何实现它。会是这样吗?
if index(of combobox) = 1(对应的团队) then 显示该团队的数据?
我希望你明白了:/我真的很不擅长解释事情,而且英语不是我的母语。非常感谢任何帮助或建议,谢谢!!
您需要为您的选择事件编写一个函数来接收来自组合框的信号。也许是 activated
信号。然后你需要清除现有的tablewidget并写入你的新数据。
像这样:
combostatsbox.activated.connect(self.load_team)
def load_team():
self.team_table_widget.clear()
# Set your values now