tkinter

s591962

Новичок
Пользователь
Окт 12, 2021
130
3
18
Изучаю Питон.
Пишу маленькую программку. В ней используется tkinter. Не могу изменить положение label1 по вертикали чтобы окно размещалось после кнопки. По горизонтали она перемещается. Появляется после нажатия на кнопку.
Код:
from tkinter import *
from tkinter import ttk     # подключаем пакет ttk
import time
import datetime
from threading import Thread
import threading
sl = {}#словарь - ведомость за день

def prozes_odnogo_lotka():
    label1 = ttk.Label(text="Началась подготовкак шокированию",borderwidth=2, relief="ridge", padding=8)
    label1.pack(anchor="nw", padx=150, pady=0)


    str = '0'#переменная для ввода номера плазмы или лотка
    sp = []#список номеров плазм
    spt = []#список времен укладки и забоа плазмы   
    str_lotok = ''
    while str[0] != 'm':
        str = input('введите номер плазмы или лотка=')
        if str[0] != '0':
            sp.append(str)
        if str[0] == '0':
            sl[str] = sp
            str_lotok = str#номер лотка
            print('загрузка лотка закончена')
            tt = time.time()
            spt.append(tt)
            print(tt)
            break
    time.sleep(15)   
    print('заберите лоток')
    for i in range (100):
        str = input('введите номер лотка =')
        if str == str_lotok:
            tt = time.time()
            spt.append(tt)
            break
        else:
            print('ошибка')
    sl['t'] = spt
    print(tt)
    print(sl)
    btn = ttk.Button(text="Шокирование закончилось", state=["disabled"])

def click_button():
    th = Thread(target=prozes_odnogo_lotka, args=())
    th.start()

root = Tk()     # создаем корневой объект - окно
root.title("Приложение учета валидаций")     # устанавливаем заголовок окна
root.geometry("600x650")    # устанавливаем размеры окна
root.resizable(False, False) # запрещаем изменять окно
label = Label(text="Hello Малика") # создаем текстовую метку
label.pack()    # размещаем метку в окне
root.iconbitmap(default="123.ico")#изменяем иконку
btn = ttk.Button(text="Начало шокирования", command=click_button) # создаем кнопку из пакета ttk


btn.pack(anchor="nw", padx=20, pady=30)    # размещаем кнопку в окне

root.mainloop()

Кроме тогою Каксделать чтобы не открывалось еще одно окно а было только окно программы и окно с графикой.
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
ней используется tkinter. Не могу изменить положение label1 по вертикали чтобы окно размещалось после кнопки. По горизонтали она перемещается. Появляется после нажатия на кнопку.
можно так
Python:
from tkinter import *
from tkinter import ttk  # подключаем пакет ttk
import time
import datetime
from threading import Thread
import threading

sl = {}  # словарь - ведомость за день


def prozes_odnogo_lotka():
    label1 = ttk.Label(text="Началась подготовкак шокированию", borderwidth=2, relief="ridge", padding=8)
    label1.pack(anchor="nw", padx=20)

    str = '0'  # переменная для ввода номера плазмы или лотка
    sp = []  # список номеров плазм
    spt = []  # список времен укладки и забоа плазмы
    str_lotok = ''
    while str[0] != 'm':
        str = input('введите номер плазмы или лотка=')
        if str[0] != '0':
            sp.append(str)
        if str[0] == '0':
            sl[str] = sp
            str_lotok = str  # номер лотка
            print('загрузка лотка закончена')
            tt = time.time()
            spt.append(tt)
            print(tt)
            break
    time.sleep(15)
    print('заберите лоток')
    for i in range(100):
        str = input('введите номер лотка =')
        if str == str_lotok:
            tt = time.time()
            spt.append(tt)
            break
        else:
            print('ошибка')
    sl['t'] = spt
    print(tt)
    print(sl)
    btn = ttk.Button(text="Шокирование закончилось", state=["disabled"])


def click_button():
    th = Thread(target=prozes_odnogo_lotka, args=())
    th.start()


root = Tk()  # создаем корневой объект - окно
root.title("Приложение учета валидаций")  # устанавливаем заголовок окна
root.geometry("600x650")  # устанавливаем размеры окна
root.resizable(False, False)  # запрещаем изменять окно
label = Label(text="Hello Малика")  # создаем текстовую метку
label.pack()  # размещаем метку в окне
# root.iconbitmap(default="123.ico")  # изменяем иконку
btn = ttk.Button(text="Начало шокирования", command=click_button)  # создаем кнопку из пакета ttk

btn.pack(anchor="nw", padx=20, pady=0)  # размещаем кнопку в окне

root.mainloop()
Каксделать чтобы не открывалось еще одно окно а было только окно программы и окно с графикой.
не понял вопрос, какое еще одно окно?
 

Форум IT Специалистов