[Tkinter] проверка запущена ли программа
Как сделать что бы программа запускалась только один раз несмотря на то сколько по ней кликают? Т.е. при повторном клике выбиралось уже открытое окно
Как сделать что бы программа запускалась только один раз несмотря на то сколько по ней кликают? Т.е. при повторном клике выбиралось уже открытое окно
Нужно создавать виджеты в цикле и потом менять их параметры. Собствна в чем ошибка след. кода ?
class lbl():
def __init__(self, n):
self.l = Label(root,
text = '1',
relief="groove",
borderwidth=1,
font=("Courier", 12, "bold"),
justify=LEFT,
width=10,
padx=10,
pady=10,
takefocus=False,
).grid(column=0,row=n)
def draw(x):
for n in range(10):
t=lbl(n)
t.l["bg"] = 'green'
print t.l
button = Button(root, text="Хеллоу")
button.grid(column=2,row=0)
button.bind("<Button-1>", draw)
Подскажите плз как сделать чтобы график строился по времени в tkinter. т.е. нужно что бы линия постоянно достраивалась, допустим каждую секунду.
Пока написал тестик, никак не могу сделать линию что бы она менялась сама без всяких нажатий кнопок.
from tkinter import *
from tkinter import ttk
def main():
a=1
root = Tk()
root.title("grafics")
v=StringVar()
#Описываем виджиты
content = Frame(root)
frame = Frame(content, borderwidth=5, relief="sunken", width=600, height=400)
timelbl = Label(content, text="t:")
time = Entry(content, textvariable=v)
levellbl = Label(content, text="level:")
level = Entry(content)
ok = Button(content, text="Okay")
canvas = Canvas(frame, width=600, height=400)
i = canvas.create_line(10, 10, 200, 50)
canvas.coords(i,a,20,100,50) # change coordinates
a = a+1
v.set(a)
time.insert=(0,"asdas")
#Выводим виджиты на экран
content.grid(column=0, row=0)
frame.grid(column=0, row=0, columnspan=3, rowspan=20)
timelbl.grid(column=3, row=0)
time.grid(column=3, row=1)
levellbl.grid(column=5, row=0)
level.grid(column=5, row=1)
ok.grid(column=3,row=2)
canvas.grid(column=0, row=0, sticky=(N, W, E, S))
root.mainloop()
if "__main__" == __name__:
#Runned as programm
main()