Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 19, 2013 21:38:25

Doktopat
Зарегистрирован: 2013-06-15
Сообщения: 55
Репутация: +  0  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

Шалом всем!
бьюсь над текстом уже час!

код таков:
from Tkinter import *

master = Tk()
master.geometry('400x400+200+200')
frame = Frame(master)
frame.pack(side=TOP)
label = Label(frame, text='current: ')
label.grid(row=0, sticky=W)
label.pack(side=LEFT)

master.mainloop()

надо оставить фрэйм прижатым к верху,запихать в него лэйбл и при этом текст в лэйбле прижать к левой части окна. Пока этот текст сидит по центру и я был бы рад если бы мне объяснили как это сделать.
Заранее спасибо

Офлайн

#2 Окт. 19, 2013 22:08:28

Romiss
От:
Зарегистрирован: 2011-11-01
Сообщения: 26
Репутация: +  4  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

Если я правильно понял тебя, попробуй так

from Tkinter import *
master = Tk()
master.geometry('400x400+200+200')
frame = Frame(master)
frame.pack(side=TOP, anchor=NW)
label = Label(frame, text='current: ')
label.grid(row=0, sticky=W)
label.pack(side=LEFT)
master.mainloop()



Офлайн

#3 Окт. 19, 2013 22:11:10

Doktopat
Зарегистрирован: 2013-06-15
Сообщения: 55
Репутация: +  0  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

Спасибо огромное!

Офлайн

#4 Окт. 19, 2013 22:49:29

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

1. Оберните код в теги.
2. Фрейм обтягивает label вне зависимости от его размеров, поэтому выровнять label можно только задав предварительно его размеры и используя свойство propagate() для блокировки обтягивания. Рамка работат как презервуар.
3. Я вообще не понял зачем Вам рамка. Вы просто хотите применить разные упаковщики на одном окне?
4. Существует еще менеджер .place() который позволяет явно задавать рассположение виджета либо в процентах от общего окна

P.S. Тема должна быть в разделе GUI :)



Офлайн

#5 Окт. 19, 2013 22:54:29

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

Romiss
Вы саму рамку запихали в верхний левый угол. Виджет label ушел вместе с ней. Это не решает поставленную задачу.
Если использовать такое решение, то код можно упростить :)

from Tkinter import *
master = Tk()
master.geometry('400x400+200+200')
frame = Frame(master)
frame.pack(anchor=NW)
label = Label(frame, text='current: ')
label.grid(row=0)
label.pack()
master.mainloop()



Отредактировано 4kpt (Окт. 19, 2013 22:54:57)

Офлайн

#6 Окт. 19, 2013 23:09:54

Romiss
От:
Зарегистрирован: 2011-11-01
Сообщения: 26
Репутация: +  4  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

4kpt
Согласен с вами. Я вышел из положения не обдумано. Признателен за наставление на путь истинный.



Офлайн

#7 Окт. 19, 2013 23:11:31

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter заставить текст в label прижиматься влево

Та бросьте. Какое наставление. Решили проблему и решили. Не парьтесь.
Главное, что просящий остался доволен :)



Отредактировано 4kpt (Окт. 19, 2013 23:11:47)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version