微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在安装在 Tkinter 画布上的框架上显示小部件?

如何解决如何在安装在 Tkinter 画布上的框架上显示小部件?

我创建了一个包含两个框架的主根。

-一帧用于程序工具栏。

-其他框架用于显示数据的画布和滚动条小部件。

-画布内部是第三个较小的框架,用于滚动槽数据。

然而,当我尝试定义新的小部件并将它们放置在第三个较小的框架上时,没有任何反应。我正在按钮命令的函数调用中定义新的小部件。我也尝试将所有内容声明为全局变量,但没有成功。

提示:我尝试将函数中的代码放置到代码的顶层并且它工作正常。此外,如果我尝试在工具栏框架上安装这些小部件,它也可以工作。似乎我唯一不能做的就是将这些新的小部件安装在画布内部的小框架上。

我使用了一个简单的 for 循环来创建仅用于测试的标签

谁能告诉我我做错了什么?

<FlatList data={data} {...otherProps} />

Picture of the app so far

解决方法

我肯定无法用您当前的代码重现该问题,但查看之前的编辑很清楚您的问题是什么。

(取自您之前的编辑)

def confirm1():
    
    global background_image1

    background.delete('all')  # <--- this line of code
 
    for x in range(100): 
        Label(second_frame,text = x ).grid(row=x,column=1)

在这里,您可以从画布中删除所有项目:

background.delete('all') 

因此没有项目出现。

您应该通过将 id 或标签传递给 delete 方法来仅删除您想要删除的项目。您可以通过提供相同的标签同时删除多个项目。

另一种选择是使用 create_window 在画布上重新创建框架项目(请注意:您的框架不会被删除/破坏,它只会从画布中删除)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。