有没有办法在 Tkinter 的菜单按钮中放置滚动条?

问题描述 投票:0回答:0

我一直在尝试制作一个应用程序,您可以在其中为文本选择多种字体。为此,我一直在使用

Tkinter
,在主窗口中我有一个菜单按钮,其中包含您可以选择的所有可能的字体。大约有 347 种字体可供选择,我想在菜单中放置一个滚动条。

我没有滚动条的代码如下:

# Menu button
fonts_MenuButton = tk.Menubutton(main_window, text="v", bg="WHITE", fg="BLACK", activebackground="WHITE", font=("Arial", 9), relief=FLAT) # Menu for choosing font

fonts_MenuButton.pack(side="left", fill="x", expand=False) # Position the menu in which you can choose any font

fonts_MenuButton.menu = Menu(fonts_MenuButton, tearoff = 0) # Create a menu
fonts_MenuButton["menu"] = fonts_MenuButton.menu

# Fonts
fonts_MenuButton.menu.add_command(label=font_name1, font=(font_name1, 13), command=font1) # Font 1 button
fonts_MenuButton.menu.add_command(label=font_name2, font=(font_name2, 13), command=font2) # Font 2 button
fonts_MenuButton.menu.add_command(label=font_name3, font=(font_name3, 13), command=font3) # Font 3 button
fonts_MenuButton.menu.add_command(label=font_name4, font=(font_name4, 13), command=font4) # Font 4 button
fonts_MenuButton.menu.add_command(label=font_name5, font=(font_name5, 13), command=font5) # Font 5 button
fonts_MenuButton.menu.add_command(label=font_name6, font=(font_name6, 13), command=font6) # Font 6 button
fonts_MenuButton.menu.add_command(label=font_name7, font=(font_name7, 13), command=font7) # Font 7 button
...

在它说的地方,比如

label=font_name1
,以
font_name
开头的变量就是我存放字体名称的变量。 像
font1
这样的功能是按下菜单按钮时使用的功能。

这是一张图片,向您展示没有滚动条的样子:

这是另一个,所以你可以看到我希望它如何显示滚动条:

有什么办法可以满足我的要求吗?谢谢。

python tkinter fonts scrollbar
© www.soinside.com 2019 - 2024. All rights reserved.