Найти - Пользователи
Полная версия: Смена вида кнопки после нажатия
Начало » GUI » Смена вида кнопки после нажатия
1
vinchkovsky
Здравствуйте.

Возникла небольшая проблема - мне надо, чтобы после нажатия на кнопке менялся параметр relief. При такой реализации: http://snipplr.com/view/15689/change-relief-example/ (извините за ссылку на сторонний сайт, не знаю, как вставлять теги) рельеф меняется после двух нажатий (возможно и с интервалом между ними). Соответственно, два вопроса:

1) Почему код не работает так, как надо (или я хочу)?
2) Как же сделать так, чтобы менялся relief?

Кстати, текст на кнопке в аналогичной ситуации меняется с первого раза :)
igor.kaist
1. Не понятно до конца, что именно вы хотите
2. На этом форуме есть раздел GUI
3. Вот так работает стабильнее… :)
from Tkinter import *

class GUI(Frame):
def __init__(self):
Frame.__init__(self)
self.button = Button(relief=RAISED,text='Test Button',command=self.changeRelief)
self.button.pack()


def changeRelief(self,event=None):
self.button.config(relief=SUNKEN)


myGUI = GUI()
myGUI.mainloop()
vinchkovsky
Спасибо за ответ ;)

1) Я хочу, чтобы после одного (а не двух) нажатий менялся relief. И мне странно, почему другие параметры меняются после одного нажатия, а relief - после двух.

2) Извините, если создал тему не там, я думал, что мой вопрос очень простой и подходит под категорию “для новичков”

3) Дело в том, что у меня много button-ов, и я использую name (event.widget.winfo_name()) для определения того, какая кнопка вызвала событие (там записаны индексы кнопок). Более простого способа такого определения, ввиду своих знаний, не нашел. И с чем связано то, что так, как вы написали, работает стабильнее?

Буду благодарен за подсказки и исправление моего кода с учетом моих нужд ;)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB