我必須創建多個單選按鈕。每個網格上都有自己的名稱和位置。還有幾個變量涉及。如何使用循環在Python中創建單選按鈕
我存儲所有的數據在一個元組 創建這些單選按鈕(我知道FONTS不會造成問題,它的存儲上面這一點,但這裏沒有顯示):
self.unitType = IntVar()
self.matPropSel = IntVar()
self.secProfSel = IntVar()
self.endSupSel = IntVar()
self.loadTypeSel = IntVar()
self.RADIOLABELS = ( # Text, Font, Variable, Value, Row, Column
('English', self.FONTS[3], self.unitType, 1, 3, 1),
('metric', self.FONTS[3], self.unitType, 2, 4, 1),
('select preset', self.FONTS[3], self.matPropSel, 1, 6, 1),
('manual entry', self.FONTS[3], self.matPropSel, 2, 7, 1),
('select preset', self.FONTS[3], self.secProfSel, 1, 10, 1),
('manual entry', self.FONTS[3], self.secProfSel, 2, 11, 1),
('one end', self.FONTS[3], self.endSupSel, 1, 15, 1),
('both ends', self.FONTS[3], self.endSupSel, 2, 16, 1),
('point', self.FONTS[3], self.loadTypeSel, 1, 18, 1),
('uniform distribution', self.FONTS[3], self.loadTypeSel, 2, 19, 1),
('uniform variation', self.FONTS[3], self.loadTypeSel, 3, 20, 1)
)
所以,我將如何使用for循環來遍歷這個元組,並從每一行生成一個單選按鈕?所有的變量都必須相同嗎?我遇到了問題。
這是我在一個循環的嘗試:
outerIndexer = 0
for labels in self.RADIOLABELS:
Radiobutton(self, text=self.RADIOLABELS[outerIndexer][0], font=self.RADIOLABELS[outerIndexer][1],
variable=self.RADIOLABELS[outerIndexer][2], value=self.RADIOLABELS[outerIndexer][3])\
.grid(row=self.RADIOLABELS[outerIndexer][4], column=self.RADIOLABELS[outerIndexer][5])
outerIndexer += 1
你能詳細說明究竟是什麼,你不明白?或者在for循環中添加你自己的嘗試,以便有人可以幫助你並糾正你可能有的一些可能的疑問。 –
@Ashish Nitin Patil肯定 – thisissparzo