我正在用easygui和它的buttonbox做一个非常小的GUI。我的问题是:我的图像也显示为按钮,但它不应该显示。是否有办法在按钮框中显示图像,但这个图像不应该是“可点击的”?要测试,您必须执行pip Install easygui
这是我的buttonbox电话:
import easygui
version = "Version 1.0 -- 10.2018"
main_options=["Doors EXPORT","ANALYSE","VISUALIZE","Auto-Mode","Configuration"]
choosed_option = gui.buttonbox(msg="",title = version, choices = main_options,image ="logo.gif" )发布于 2018-10-15 15:12:13
从我喜欢的buttonbox文档中可以看出,图像不应该是一个按钮或更改它状态的方式。然而,这里有一个更简单的示例,应该接近您所需要的内容。
import tkinter as tk
root = tk.Tk()
version = "Version 1.0 -- 10.2018"
root.title(version)
root.geometry("675x200")
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)
main_options=["Doors EXPORT","ANALYSE","VISUALIZE","Auto-Mode","Configuration"]
tk.Label(root, text="Here is where you message will go from the msg section of your buttonbox").grid(row=0, column=0, columnspan = len(main_options), stick="n", pady=(15,0))
img = tk.PhotoImage(file="logo.gif")
tk.Label(root,image=img).grid(row=1, column=0, pady=5)
frame2 = tk.Frame(root)
frame2.grid(row=2, column=0)
for ndex, item in enumerate(main_options):
tk.Button(frame2, text=item).grid(row=0, column=ndex, ipadx=5, ipady=5, padx=5, pady=(30, 5), stick="ew")
root.mainloop()您还可以创建一个类,该类基本上执行相同的操作,并接受buttonbox所做的所有参数,如下所示:
import tkinter as tk
options = ["Doors EXPORT","ANALYSE","VISUALIZE","Auto-Mode","Configuration"]
version = "Version 1.0 -- 10.2018"
msg = "Here is where you message will go from the msg section of your buttonbox"
ipath = "logo.gif"
class mock_buttonbox(tk.Tk):
def __init__(self, var_msg = "", version = "", main_options = [], img_path=""):
tk.Tk.__init__(self)
self.title(version)
self.geometry("675x200")
self.columnconfigure(0, weight=1)
self.rowconfigure(0, weight=1)
try:
tk.Label(self, text=var_msg).grid(row=0, column=0, columnspan = len(main_options), stick="n", pady=(15,0))
img = tk.PhotoImage(file=img_path)
tk.Label(self,image=img).grid(row=1, column=0, pady=5)
except:
print("Bad image path, wrong image format or no options provided.")
frame2 = tk.Frame(self)
frame2.grid(row=2, column=0)
try:
for ndex, item in enumerate(main_options):
tk.Button(frame2, text=item).grid(row=0, column=ndex, ipadx=5, ipady=5, padx=5, pady=(30, 5), stick="ew")
except:
print("No options provided or options are not a value argument for text field.")
self.mainloop()
mock_buttonbox(var_msg = msg, version = version, main_options = options, img_path = ipath)https://stackoverflow.com/questions/52810750
复制相似问题