标签: tkinter

如何在Tkinter中显示工具提示?

工具提示是当鼠标在窗口小部件上悬停一段时间时弹出的那些小文本.

如何向tkinterPython应用程序添加工具提示消息?

工具提示示例

python tkinter tooltip

36
推荐指数
7
解决办法
3万
查看次数

隐藏轴标签

我试图在第一个子图上隐藏轴标签211.我想标记图形,而不仅仅是一个子图(参考:"Isub事件特征").如何控制字体属性,如大小,字体,颜色?

f = Figure()

vdsvgsPlot = f.add_subplot(211)
vdsvgsPlot.plot(theLister()[3],theLister()[0])
vdsvgsPlot.plot(theLister()[3],theLister()[1])

isubPlot = f.add_subplot(212)
isubPlot.plot(theLister()[3],theLister()[2])

plotCanvas = FigureCanvasTkAgg(f, master)
toolbar = NavigationToolbar2TkAgg(plotCanvas, master)

plotCanvas.get_tk_widget().pack()
Run Code Online (Sandbox Code Playgroud)

先感谢您.

python tkinter matplotlib

36
推荐指数
2
解决办法
6万
查看次数

关闭pyplot窗口

最终编辑:

我在关闭pyplot窗口的主题上发现的是它很可能不应该使用pyplot来完成.SRK提供了一个很好的例子,说明如何处理将在下面的答案中更新的情节.此外,我偶然发现了如何将pyplot图放入Tkinter窗口,而且Tkinter比pyplot更擅长打开和关闭窗口.这里是怎样把一个pyplot情节变成Tk的窗口,这是一个很好的例子.

/最终编辑

我希望能够显示几个图,然后能够从一些代码输入中单独关闭(从屏幕中删除),但我不知道执行此操作的代码输入.

以下是我到目前为止所尝试的内容.我已经玩过了show和close命令的位置,但是我从中获得的唯一真实结果是没有出现一个或另一个情节,但是我无法从屏幕上删除一个情节.我一直在插入raw_input()来创建暂停.

编辑:这些情节是从Tkinter gui调用的,如果从这个方向有更好的方法,我会很高兴听到它.

任何意见都将不胜感激,谢谢.

import matplotlib.pyplot as plt

a = range(0,10)
b = range(0,20,2)
c = range(0,30,3)
d = range(0,40,4)

plot1 = plt.figure()
plt.plot(a,b, 'r-o')

plt.show()

plt.close()

plot2 = plt.figure()
plt.plot(c,d, 'b-o')

plt.show()
plt.close() 
Run Code Online (Sandbox Code Playgroud)

编辑代码:这也不起作用.

plot1 = plt.figure(1)
plt.plot(a,b, 'r-o')

plot2 = plt.figure(2)
plt.plot(c,d, 'b-o')
#plt.close(1)
#this will prevent plot1 from being displayed
plt.show()
plt.close(1)  # or ('all') or (plot1)
Run Code Online (Sandbox Code Playgroud)

python tkinter matplotlib

36
推荐指数
2
解决办法
9万
查看次数

在Tkinter有什么方法可以使小部件不可见?

像这样的东西,会使小部件正常显示:

Label(self, text = 'hello', visible ='yes') 
Run Code Online (Sandbox Code Playgroud)

虽然这样的事情会使小部件根本不出现:

Label(self, text = 'hello', visible ='no') 
Run Code Online (Sandbox Code Playgroud)

python tkinter

35
推荐指数
3
解决办法
10万
查看次数

更改标签上的文字

我在使用键绑定来更改标签或任何参数的值时遇到问题.这是我的代码:

from tkinter import*

class MyGUI:
  def __init__(self):
    self.__mainWindow = Tk()
    #self.fram1 = Frame(self.__mainWindow)
    self.labelText = 'Enter amount to deposit'
    self.depositLabel = Label(self.__mainWindow, text = self.labelText)
    self.depositEntry = Entry(self.__mainWindow, width = 10)
    self.depositEntry.bind('<Return>', self.depositCallBack)
    self.depositLabel.pack()
    self.depositEntry.pack()

    mainloop()

  def depositCallBack(self,event):
    self.labelText = 'change the value'
    print(self.labelText)

myGUI = MyGUI()
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我点击输入框并按Enter键,希望标签将值更改为"更改值".但是,虽然它确实打印了该文本,但标签保持不变.

通过查看有关类似问题和问题的其他问题,我已经想出了如何在课堂外使用其中的一些,但是我在课堂上做这件事有些困难.

另外,在旁注中,"主人"在tkinter中扮演什么角色?

python tkinter python-3.x

35
推荐指数
3
解决办法
15万
查看次数

如何使用Tkinter创建密码输入字段

我正在尝试使用Tkinter编写登录窗口,但我无法以星号格式隐藏密码文本.这意味着密码输入是纯文本,必须避免.知道怎么做吗?

python tkinter

34
推荐指数
4
解决办法
5万
查看次数

如何在tkinter中找出当前的小部件大小?

我正在使用PythonTkinter,我需要知道小部件的当前尺寸(宽度,高度).

我已经尝试了somewidget["width"],但它只返回一个固定值,并且每当窗口小部件大小改变时(例如调整窗口大小时)都不会更新.

python tkinter

34
推荐指数
3
解决办法
5万
查看次数

如何更新Tkinter Label小部件的图像?

我希望能够在Tkinter标签上换出图像,但我不知道该怎么做,除了更换小部件本身.

目前,我可以显示如下图像:

import Tkinter as tk
import ImageTk

root = tk.Tk()
img = ImageTk.PhotoImage(Image.open(path))
panel = tk.Label(root, image = img)
panel.pack(side = "bottom", fill = "both", expand = "yes")
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

但是,当用户点击时,比如ENTER键,我想更改图像.

import Tkinter as tk
import ImageTk

root = tk.Tk()

img = ImageTk.PhotoImage(Image.open(path))
panel = tk.Label(root, image = img)
panel.pack(side = "bottom", fill = "both", expand = "yes")

def callback(e):
    # change image

root.bind("<Return>", callback)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

这可能吗?

python tkinter python-imaging-library python-2.7

33
推荐指数
2
解决办法
6万
查看次数

如何将Tkinter Button状态从禁用更改为正常?

我需要状态从改变DISABLEDNORMALButton,当一些事件发生.

这是我的Button的当前状态,目前已禁用:

  self.x = Button(self.dialog, text="Download",
                state=DISABLED, command=self.download).pack(side=LEFT)

 self.x(state=NORMAL)  # this does not seem to work
Run Code Online (Sandbox Code Playgroud)

anyonne可以帮助我如何做到这一点?

python state tkinter button

33
推荐指数
2
解决办法
11万
查看次数

如何将回车键绑定到tkinter中的函数?

我是一个Python开始自学者,在MacOS上运行.

我正在tkinter中创建一个带有文本解析器GUI的程序,在这里你可以在一个Entry小部件中键入一个命令,然后点击一个Button小部件,触发我的parse()功能,等等,将结果打印成一个Text小部件,文本冒险风格.

>绕过按钮

戴夫,我不能让你这样做.

我正试图找到一种方法来摆脱Button每次用户发出命令时将鼠标拖到需要的地方,但事实证明这比我想象的更难.

我猜测正确的代码是self.bind('<Return>', self.parse())什么样的?但我甚至不知道把它放在哪里.root,__init__,parse(),和create_widgets()不想要它.

要清楚,任何人都应该在prog中输入的唯一原因是触发parse(),因此不需要特别支持Entry小部件.它工作的任何地方都很好.

针对7stud,基本格式:

from tkinter import *
import tkinter.font, random, re

class Application(Frame):

    def __init__(self, master):
        Frame.__init__(self, master, ...)
        self.grid()
        self.create_widgets()
        self.start()


    def parse(self):
        ...


    def create_widgets(self):

        ...

        self.submit = Button(self, text= "Submit Command.", command= self.parse, ...)
        self.submit.grid(...)


root = Tk()
root.bind('<Return>', self.parse)

app = Application(root)

root.mainloop()
Run Code Online (Sandbox Code Playgroud)

python tkinter key-bindings python-3.x

33
推荐指数
2
解决办法
9万
查看次数