我试着用平纹帆布和吉泽罗。我已经成功地将画布添加到guizero窗口,但现在我需要知道如何将guizero小部件添加到该画布中。我的总体目标是有一个可滚动的部分。
这是我的密码
import tkinter as tk
from guizero import *
from PIL import Image
def file_function():
print("File option")
def edit_function():
print("Edit option")
def open_png():
global level_img, picture
path = filedialog.askopenfilename(title='choose video', defaultextension="*.png", filetypes=(('wmw level', '*.png'),('any', '*.*')))
print(path)
if path == '':
return
level_img = Image.open(path)
picture.image = level_img
app = App(title="Hello world", layout='grid')
menubar = MenuBar(app,
toplevel=["File", "Edit"],
options=[
[ ["open png", open_png], ['open with selector', file_function], ["save", file_function], ['export xml', file_function], ['export png', file_function] ],
[ ["Edit option 1", edit_function], ["Edit option 2", edit_function] ]
])
objects = tk.Canvas(highlightthickness=5, highlightbackground='black')
img = tk.PhotoImage(file="image.png")
objects.create_image(0,0, image=img)
text = Text(objects, text='this is a test')
app.add_tk_widget(objects, grid=[0,0], width=200, height=300)
app.display()我想能像向导盒一样控制画布。
发布于 2022-07-07 11:10:02
它不是添加一个tkinter画布,而是添加一个guizero Drawing小部件(https://lawsie.github.io/guizero/drawing/),它基本上是一个tk画布,上面撒着guizero糖。
例如,您可以使用.tk属性访问tkinter画布的绘图小部件。
drawing = Drawing.app()
drawing.tk.config[bg='red']然而,对于您的特定应用程序,考虑到您正在使用这么多tkinter命令,为什么不直接忘记guizero并使用纯tkinter呢?
https://stackoverflow.com/questions/72887613
复制相似问题