首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在tkinter画布中添加guizero小部件?

如何在tkinter画布中添加guizero小部件?
EN

Stack Overflow用户
提问于 2022-07-06 17:22:28
回答 1查看 83关注 0票数 0

我试着用平纹帆布和吉泽罗。我已经成功地将画布添加到guizero窗口,但现在我需要知道如何将guizero小部件添加到该画布中。我的总体目标是有一个可滚动的部分。

这是我的密码

代码语言:javascript
复制
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()

我想能像向导盒一样控制画布。

EN

回答 1

Stack Overflow用户

发布于 2022-07-07 11:10:02

它不是添加一个tkinter画布,而是添加一个guizero Drawing小部件(https://lawsie.github.io/guizero/drawing/),它基本上是一个tk画布,上面撒着guizero糖。

例如,您可以使用.tk属性访问tkinter画布的绘图小部件。

代码语言:javascript
复制
drawing = Drawing.app()
drawing.tk.config[bg='red']

然而,对于您的特定应用程序,考虑到您正在使用这么多tkinter命令,为什么不直接忘记guizero并使用纯tkinter呢?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72887613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档