我有两个列的非常简单的网格布局,其中第一列应该显示一些文本,第二列显示树状视图:
#! python3
from random import randint
import tkinter as tk
from tkinter import ttk
from tkinter.constants import *
class Application(ttk.Frame):
def __init__(self, root):
self.root = root
self.root.resizable(0, 0)
self.root.gri
class input_data(Tkinter.Tk):
def __init__(self):
Tkinter.Tk.__init__(self);
self.resizable(width=False,height=False);
self.geometry('500x500');
t = ['frame','input_text'];
for i in t:
eval('self.'+i+'()'
我有一些代码可以在tkinter toplevel小部件中打开一个图。当我抓住图层的一角来调整它的大小时,我想要情节和窗口一起调整大小。
import Tkinter
import matplotlib
matplotlib.use('TkAgg')
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
from matplotlib.backends.backend_tkagg import NavigationToolbar2TkAgg
from matplotlib.figure import Fi
所以在回答这个的过程中,我遇到了Tkinter的一些奇怪的行为。我有一个类,用于调整Canvas实例和在其上绘制的任何小部件的大小。但是,当我运行代码时,无论初始窗口大小如何,窗口都会不断扩展,直到填满整个屏幕。在此之后,窗口的行为与预期完全相同,并适当地调整对象的大小。窗口只会在启动时展开以充满整个屏幕。
通过阅读Tkinter文档,我可以相信这可能是特定于平台的(虽然我没有任何证据)。
我的问题是:为什么会发生这种情况?我怎么才能阻止它呢?
代码如下:
from Tkinter import *
# a subclass of Canvas for dealing with resizi
在这段代码中,文本小部件的位置位于中间-左侧。我想让它正好在左侧的Label小部件下面。我试图通过pady参数来定义位置,但它不起作用。如何更改文本小工具的位置。
from tkinter import *
from tkinter.font import Font
root = Tk()
root.title("Project")
root.geometry('700x400')
name = Label(root,text="Project")
name.configure(font=('Arial',20),fg=
我将treeview小部件放置在网格单元格中,该单元格使用stick=N+S+E+W,以便将小部件边框附加到网格单元格的边界。另外,我为父窗口(根)设置了grid_columnconfigure(0, weight=1),以便根据主窗口大小(可调整大小)调整列0(也包含treeview)中的小部件的大小。尽管如此,treeview小部件的某些列(“比特率”、“状态”)仍然没有显示,因为整个小部件比包含它的网格单元要大。这是消息来源:
from tkinter import *
from tkinter.ttk import *
class MainWindow(Frame):
de
我目前正在使用curio,并试图将tkinter的回调转换为与异步代码兼容的东西。我已经解决了大部分问题,事件等待,协议,但唯一剩下的就是更新窗口。
tkinter.Tk.update方法在调整窗口大小时阻塞。这会扭曲我的异步代码,因为一切都必须在不阻塞的情况下运行。我不能在另一个线程中运行这个线程,如。
下面是一些测试代码,这些代码将显示对update()的调用需要多长时间。
import tkinter
from time import monotonic
window = tkinter.Tk()
try:
while True:
started = monot