我想知道是否有办法将单选按钮的标签文本移动到不同的区域,例如在实际按钮下方。
下面是一些使用我正在使用的网格放置的单选按钮的示例:
from tkinter import *
from tkinter import ttk
class MainGUI(Frame):
def __init__(self, parent):
self.parent = parent
Frame.__init__(self, parent, background="white")
self.mainframe = ttk.Frame(root, padding="8 8 12 12")
self.mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
self.mainframe.columnconfigure(0, weight=1)
self.mainframe.rowconfigure(0, weight=1)
ttk.Radiobutton(self.mainframe, text="Button 1", value=0).grid(column=1, row=2)
ttk.Radiobutton(self.mainframe, text="Button 2", value=1).grid(column=2, row=2)
ttk.Radiobutton(self.mainframe, text="Button 3", value=2).grid(column=3, row=2)
ttk.Radiobutton(self.mainframe, text="Button 4", value=3).grid(column=4, row=2)
if __name__ == '__main__':
root = Tk()
root.geometry("300x100")
app = MainGUI(root)
root.mainloop()
下面是运行代码时的帧图像:
如您所见,默认情况下是在按钮的一侧,但我正在寻找一种方法来移动下面的文本,我似乎找不到解决这个问题的任何方法!
谢谢,拉吉
最佳答案
没有选项可以设置单选按钮中的文本位置,所以我能想到的最简单的解决方法是删除单选按钮文本并在其下方放置一个标签。
另外,我宁愿让一个 MainGUI
类继承自 Tk
而不是 Frame
这样你就不必创建一个if __name__ == '__main__':
部分中的根窗口,但这只是一个建议。
from tkinter import *
from tkinter import ttk
class MainGUI(Tk):
def __init__(self):
Tk.__init__(self)
self.geometry("300x100")
self.configure(background="white")
self.mainframe = ttk.Frame(self, padding="8 8 12 12")
self.mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
self.mainframe.columnconfigure(0, weight=1)
self.mainframe.rowconfigure(0, weight=1)
ttk.Radiobutton(self.mainframe, value=0).grid(column=1, row=2)
ttk.Label(self.mainframe, text="Button 1").grid(column=1, row=3, padx=4)
ttk.Radiobutton(self.mainframe, value=1).grid(column=2, row=2)
ttk.Label(self.mainframe, text="Button 2").grid(column=2, row=3, padx=4)
ttk.Radiobutton(self.mainframe, value=2).grid(column=3, row=2)
ttk.Label(self.mainframe, text="Button 3").grid(column=3, row=3, padx=4)
ttk.Radiobutton(self.mainframe, value=3).grid(column=4, row=2)
ttk.Label(self.mainframe, text="Button 4").grid(column=4, row=3, padx=4)
self.mainloop()
if __name__ == '__main__':
app = MainGUI()
备注:为了得到这张图片,我还使用了一个ttk.Style
来在linux下获得更好的结果。
关于python - 如何在 Python Tkinter 中将单选按钮的文本标签移动到按钮下方?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41551294/