标签: tkinter

tkinter和Tkinter之间的区别

当我回答Tkinter问题时,我通常会尝试自己运行代码,但有时我会收到此错误:

Traceback (most recent call last):
  File "C:\Python27\pygame2.py", line 1, in <module>
    from tkinter import *
ImportError: No module named tkinter
Run Code Online (Sandbox Code Playgroud)

当我看到问题时,我看到他们tkinter用小写t 导入:

from tkinter import *
Run Code Online (Sandbox Code Playgroud)

我总是Tkinter用大写字母T 进口:

from Tkinter import *
Run Code Online (Sandbox Code Playgroud)

这总是适合我.使用tkinter和有Tkinter什么区别?

python import tkinter

27
推荐指数
3
解决办法
2万
查看次数

tkinter:方法后如何使用

嘿,我是python的新手,我正在使用tkinter为我的gui.我在使用"after"方法时遇到了麻烦.目标是每5秒钟出现一个随机字母.

这是我的代码:

import random
import time
from tkinter import *


root = Tk()

w = Label(root, text="GAME")
w.pack()

frame = Frame(root, width=300, height=300)
frame.pack()

L1 = Label(root, text="User Name")
L1.pack(side=LEFT)
E1 = Entry(root, bd =5)
E1.pack(side=LEFT)


tiles_letter = ['a', 'b', 'c', 'd', 'e']


while len(tiles_letter) > 0:
    rand = random.choice(tiles_letter)
    tile_frame = Label(frame, text=rand)
    tile_frame.pack()
    frame.after(500)
    tiles_letter.remove(rand)  # remove that tile from list of tiles

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

有人可以帮助我 - 问题肯定是frame.after(500):我不确定使用"frame"是否正确,我不知道500后面的参数是什么.

谢谢

python user-interface tkinter pycharm

27
推荐指数
1
解决办法
10万
查看次数

如何在Tkinter中按下按钮后清除Entry小部件?

我试图Entry在用户使用Tkinter按下按钮后清除小部件.

我试过使用ent.delete(0, END),但是我得到一个错误,说字符串没有属性delete.

这是我的代码,我收到错误real.delete(0, END):

secret = randrange(1,100)
print(secret)
def res(real, secret):
    if secret==eval(real):
        showinfo(message='that is right!')
    real.delete(0, END)

def guess():
    ge = Tk()
    ge.title('guessing game')

    Label(ge, text="what is your guess:").pack(side=TOP)

    ent = Entry(ge)
    ent.pack(side=TOP)

    btn=Button(ge, text="Enter", command=lambda: res(ent.get(),secret))
    btn.pack(side=LEFT)

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

python user-interface tkinter widget

26
推荐指数
4
解决办法
12万
查看次数

覆盖Tkinter"X"按钮控件(关闭窗口的按钮)

当用户按下我创建的关闭时 Button,某些任务在退出之前执行.但是,如果用户单击[X]窗口右上角的按钮关闭窗口,则无法执行这些任务.

如何覆盖用户单击[X]按钮时发生的情况?

python tkinter button

26
推荐指数
2
解决办法
4万
查看次数

tkinter在for循环传递命令参数中创建按钮

我试图在for循环中创建tkinter中的按钮.并且每个循环都将i count值作为参数传递给命令值.因此,当从命令值调用函数时,我可以判断按下了哪个按钮并相应地执行操作.问题是,假设len为3,它将创建3个按钮,标题为"Game 1"到"Game 3",但是当按下任何按钮时,打印值总是2,即最后一次迭代.因此看起来按钮是作为单独的实体制作的,但命令参数中的i值似乎完全相同.这是代码:

def createGameURLs(self):
    self.button = []
    for i in range(3):
        self.button.append(Button(self, text='Game '+str(i+1),command=lambda:self.open_this(i)))
        self.button[i].grid(column=4, row=i+1, sticky=W)
def open_this(self, myNum):
    print(myNum)
Run Code Online (Sandbox Code Playgroud)

有没有办法在每次迭代时获得当前的i值以坚持使用该特定按钮?

python tkinter button

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

如何在Python中使用tkinter选择目录并存储位置

我正在创建一个带有浏览按钮的GUI,我只想返回路径.我一直在寻找使用如下代码的解决方案.

Tkinter.Button(subframe, text = "Browse", command = self.loadtemplate, width = 10).pack()

   def loadtemplate(self): 
        filename = tkFileDialog.askopenfilename(filetypes = (("Template files", "*.tplate")
                                                             ,("HTML files", "*.html;*.htm")
                                                             ,("All files", "*.*") ))
        if filename: 
            try: 
                self.settings["template"].set(filename)
            except: 
                tkMessageBox.showerror("Open Source File", "Failed to read file \n'%s'"%filename)
Run Code Online (Sandbox Code Playgroud)

但是我知道Tkinter有一个内置的,askopenfilename这是一个非常简单的一行代码来打开文件.有没有办法修改它来返回目录而不是文件?是否有比我发布的更大代码块更小的选项?

python directory tkinter button python-2.x

26
推荐指数
2
解决办法
8万
查看次数

如何在Python中更改按钮大小?

我在学校做一个简单的项目,我需要点击六个不同的按钮.按钮必须有不同的大小,但我找不到怎么做.我使用以下方法制作了按钮:

def __init__(self, master):
    super().__init__(master)
    self.grid()
    self.button1 = Button(self, text = "Send", command = self.response1)   
    self.button1.grid(row = 2, column = 0, sticky = W)
Run Code Online (Sandbox Code Playgroud)

我想像这样的东西:

self.button1.size(height=100, width=100)
Run Code Online (Sandbox Code Playgroud)

会工作,但它没有,我无法找到如何在任何地方做到这一点.

我使用的是Python 3.3.

python tkinter

26
推荐指数
1
解决办法
9万
查看次数

Python Tkinter正确的发音

我不确定我是否适合这类问题,如果没有,请告诉我,我会删除这个问题.无论如何,Tkinter的正确发音是什么?我环顾四周,有人说Tea Kay Inter,Tinkter,Tea Kin ter ......等等.但哪一个被正式接受?

python tkinter

26
推荐指数
1
解决办法
8569
查看次数

Tkinter使用lambda循环分配按钮命令

我正在尝试创建一些按钮(带有for),如下所示:

def a(self, name):
    print name

users = {"Test":"127.0.0.0", "Test2":"128.0.0.0"}
row = 1
for name in users:
    user_button = Tkinter.Button(self.root,
                                 text=name,
                                 command=lambda: self.a(name))
    user_button.grid(row = row, column = 0)
    row+=1
Run Code Online (Sandbox Code Playgroud)

并且每个按钮都有自己的参数(Test getting Test和Test2得到Test2)但是当我按下按钮时它们都打印"Test2",这意味着它们使用相同的功能和相同的参数.

我怎么解决这个问题?

python lambda loops tkinter button

26
推荐指数
1
解决办法
1万
查看次数

tkinter pack方法的"填充"和"扩展"选项之间的区别

我知道这是一个太微不足道的问题,但我是python的新手,我刚刚开始使用该tkinter模块.我到处都看到了它,我无法找到满意的答案.我找到了以下内容:

fill 选项:它确定是否占用更多空间或保留"自己的"维度.

expand 选项:它处理父窗口小部件的扩展.

问题是,这两个听起来或多或少相同.我甚至尝试了一些例子,通过在4个值fill和2个值之间切换expand但在2或3个案例中接收或多或少相同的输出,因为我有这个查询.在这方面,任何帮助将不胜感激.提前致谢!

python tkinter

26
推荐指数
3
解决办法
4万
查看次数