标签: tkinter

如何在 tkinter GUI 上使按钮平坦

你好美丽的社区。我正在树莓上开发 tkinter GUI。好吧,首先我开始在 Windows 上对我的 gui 进行编程,我想让我的按钮在屏幕上看起来平坦,边缘没有任何线条,并且使用救济 =“平坦”效果很好,但是当我完成我的项目并在我的树莓上运行我的程序时我的按钮在边缘上有那些线,似乎救济 = 平坦 没有任何效果,我尝试使用救济 = FLAT,但仍然存在同样的问题

在这里您可以看到正在运行的程序的屏幕截图以及我的按钮周围的线条

我的树莓派屏幕截图

这是我的代码

bouton_break = Button(f2, image=img_break, relief='flat' , command = break_ )  #break
bouton_break.place(bordermode=OUTSIDE, height=134, width=107, x=40 , y=200)
bouton_MM = Button(f2, image=img_MM, relief='flat', command=maint_page)
bouton_MM.place(bordermode=OUTSIDE, height=134, width=107, x=170 , y=200)
boutonlogout = Button(f2, image=img_logout , relief='flat', command = logout_cmd)  #logout
boutonlogout.place(bordermode=OUTSIDE, height=134, width=107, x=300 , y=200)
Run Code Online (Sandbox Code Playgroud)

python tkinter raspbian raspberry-pi3

0
推荐指数
1
解决办法
4648
查看次数

tkinter 退出/退出/终止函数线程退出主循环

我有这个脚本,它在 tkinter 中的主类/循环之外/之前执行一个长时间运行的函数,并且我创建了一个按钮来使用 root.destroy() 完全退出程序,但它关闭了 gui 并且该函数继续运行创建可执行文件后,控制台甚至作为后台进程。

如何解决这个问题?

我的脚本片段:

 from tkinter import *
 import threading             

def download():
    #downloading a video file
def stop(): # stop button to close the gui and should terminate the download function too
   root.destroy()

class 
...
...
...
def downloadbutton():
    threading.Thread(target=download).start()
Run Code Online (Sandbox Code Playgroud)

python multithreading tkinter python-multithreading python-2.7

0
推荐指数
1
解决办法
2481
查看次数

使用 python 类 (OOP) 创建功能性海龟对象?

我目前正在用 python 编写代码,以创建一个与“太空入侵者”有些相似的游戏。在我尝试使用类制作所有入侵者对象(即海龟)之前,一切进展顺利,因此我可以在调整难度时轻松操纵我想要的敌人数量。

但是现在我已经这样做了,我已经删除了 TURTLE 对象的功能,因为它们现在被视为 CLASS OBJECTS。因此,我不能使用诸如[object].xcor和 之类的乌龟模块功能,[object].ycor这些功能有些必不可少。

这是创建对象类的代码:

class invaders():
def __init__(self, speed, position):
    self = turtle.Turtle()   # how I thought I could make them turtle objects (didn't work)
    self.color('red')   
    self.shape('circle')
    self.up()
    self.setposition(position)
    self.speed(speed)

def change_speed(newSpeed):
    invader.speed(newSpeed)   # use to make new speed if changing difficulty  #variable.changeSpeed(newSpeed)

def change_position(x, y):
    invader.setposition(x, y)
Run Code Online (Sandbox Code Playgroud)

我还在下面附上了一张照片,以便您可以看到我正在谈论的两个对象之间的区别。

文本下方的错误不相关

python class tkinter object turtle-graphics

0
推荐指数
1
解决办法
3487
查看次数

如何用 tkinter 做一个“另存为”窗口?


有什么方法可以创建一个保存窗口,而不必在 python (tkinter) 中从头开始?

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

如何使用 tkinter 创建文件保存对话框?

tkinter python-3.x

0
推荐指数
1
解决办法
3980
查看次数

tkinter:能够在脚本运行时单击其他按钮

我有一个简单的 Tkinter gui,上面有大约 20 个按钮。当我单击一个按钮时,脚本会运行大约 5 分钟。在此期间,我必须等到脚本停止运行才能单击其他按钮。有没有办法设置窗口,以便我可以在第一个单击的脚本运行时单击其他按钮?

from Tkinter import *
import Tkinter as tk
import time

def function1():
    time.sleep(60)
    print 'function1'


def function2():
    time.sleep(60)
    print 'function2'

root = Tk()

w = 450 # width for the Tk root
h = 500# height for the Tk root

frame = Frame(root, width=w,height =h)
button1=Button(frame, text = 'function 1',fg='black',command=function1).grid(row=1,column=1) 
button2=Button(frame, text = 'function 2',fg='black',command=function2).grid(row=1,column=2) 

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

我希望能够在仍在运行function2后点击function1

python tkinter

0
推荐指数
1
解决办法
1395
查看次数

_tkinter.TclError:无效的命令名称“.entry#”

我一直在使用 tkinter 在 python 中编码,但遇到了 tinter 库中的异常。

由于我不知道错误的确切含义,因此我很难调试我的程序。我想知道是否有人可以概述错误并提出可能导致它的原因,以便我知道在调试我的程序时要查找什么。_tkinter.TclError: invalid command name ".entry#"(散列代表一个数字)。

我有一张图像显示通过我的程序的导航,如果有帮助会导致错误。

通过调色程序显示导航的图像。 用户从主菜单间接进入成本配置屏幕,然后退出并返回主菜单。 然后用户尝试返回到同一个屏幕,但是在尝试到达它时会引发错误。

基本上,该程序只会让我在“记录”部分中查看一次子菜单,每次运行它时,它应该让我根据需要多次输入它们。

python tkinter

0
推荐指数
1
解决办法
2901
查看次数

如何设置禁用按钮文本的颜色?

有一个按钮。
如何设置禁用按钮文本的颜色?

import tkinter as tk

root = tk.Tk()
frame = tk.Frame(root)
frame.pack()

button = tk.Button(frame, text="X", fg="red")
button.grid(row=0, column=0)
button['state'] = tk.DISABLED

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

python tkinter

0
推荐指数
1
解决办法
2560
查看次数

无法更改 Tkinter 中按钮的颜色

我无法使用 fg 和 bg 更改按钮的颜色。我收到此错误:_tkinter.TclError: unknown option "-fg"

_scrape_btn = ttk.Button(_mainframe, text='Scrape!', command=save, fg='blue')
_scrape_btn.grid(row=2, column=0, sticky=(N,E), pady=2)

_compress_btn = ttk.Button(_mainframe, text='Compress!', command=compress)
_compress_btn.grid(row=2, column=1, sticky=W, pady=2)
Run Code Online (Sandbox Code Playgroud)

python tkinter

0
推荐指数
1
解决办法
1446
查看次数

框架中的 tkinter 背景图像

我想在一个框架中放置一个背景图像,这是我试图运行但没有成功的代码。

import tkinter as tk
from tkinter import *

root = tk.Tk()

F1 = Frame(root)
F1.grid(row=0)

photo = PhotoImage(file="sfondo.png")
label = Label(F1, image=photo)
label.image = photo
label.place(x=0, y=0)

b = tk.Button(label, text="Start")
b.grid(row=8, column=8)

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

如果我这样运行代码,则只显示左上角的一个小点(框架中没有任何内容,即使我将标签放在其中)。如果我用 替换标签父级root,它会显示带有一小部分图像作为背景的按钮(只有按钮的周边有几个像素的颜色)。但是,我想要的是框架中完整显示的背景图像,我可以在其中放置我想要的小部件。

我尝试使用 place 方法作为 this 和 PIL 模块

import tkinter as tk
from tkinter import *
from PIL import Image, ImageTk

root = tk.Tk()

F1 = Frame(root)
F1.grid(row=0)
image = Image.open("sfondo.png")

render = ImageTk.PhotoImage(image)
img = tk.Label(F1, image=render)
img.image = render
img.place(x=0, …
Run Code Online (Sandbox Code Playgroud)

python tkinter

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

类型错误:只能将 str(不是“设置”)连接到 str

基本上我正在尝试使用Entry box我在 tkinter 中制作的 as input,将 a 传递value给我的信号发生器。但是我收到标题中提到的错误。如果我通过value终端,它可以正常工作,所以这可能是 tkinter 的问题,而不是仪器(罗德和施瓦茨 SMB100A)的问题。

我尝试将值传递为string,正如错误所暗示的那样,但没有运气。

import visa
import tkinter as tk


rm = visa.ResourceManager()
print(rm.list_resources())
inst = rm.open_resource('TCPIP::192.168.100.200::INSTR')

#This one would work, after i bind the function to the button,
#i just press it and it passes the preset value. 
#All i want to do is pass a value through the Entry widget, 
#instead of having a set one.
#freq = str(250000) 
#def freqset_smb100a(): …
Run Code Online (Sandbox Code Playgroud)

python tkinter python-3.x

0
推荐指数
1
解决办法
7069
查看次数