Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 18, 2015 12:31:50

fox85
Зарегистрирован: 2014-05-30
Сообщения: 56
Репутация: +  -1  -
Профиль   Отправить e-mail  

Помогите найти ошибку в коде

Добрый вечер!
Помогите исправить ошибку в коде.
Программа должна выдавать секрет долго лете вот код.


 
 # Долгожитель страница 293
# Демонстрируеттекстовое поле, текстовую облать и менеджер размещения Grid
from tkinter import *
class Application(Frame):
    " GUL-приложение, владеющее секретом долголетия."
    def __init__(self, master):
        " Иницилизирует рамку."
        super(Application, self).__init__(master)
        self.grid()
        self.create_widgets()
    # Размещение элементов управления с
    # помощью менеджера Grid
    def create_widgets(self):
        " Создает кнопку текстовое поле и текстовую область"
        # метка инструкция
        self.inst_lbl = Label(self, text = "Чтобы узнать секрет долголетия, введите пароль")
        self.inst_lbl.grid(row = 0, column = 0, columnspan = 2, sticky = W)
        # метка около поля ввода пароля
        self.pw_lbl = Label(self, text = "Пароль: ")
        self.pw_lbl.grid(row = 1, column = 0, sticky = W)
        # текстовое поле для ввода пароля
        self.pw_ent = Entry(self)
        self.pw_ent.grid(row = 1, column = 1, sticky = W)
        # кнопка отправки значения
        self.submit_bttn = Button(self, text = "Узнать секрет", command = self.reveal)
        self.submit_bttn.grid(row = 2, column = 0, sticky = W )
        # создание текстовой области. в которую будет выведен ответ
        self.secret_txt = Text(self, width = 35, height = 5, wrap = WORD)
        self.secret_txt.grid(row = 3, column = 0, columnspan = 2, sticky = W)
    def reveal(self):
        " В зависимости от введенного пароля отвечает размными сообщениями."
        contents = self.pw_ent.get()
        if contents == 'secret':
            message = "Чтобы дожить до 100 лет, надо сначало дожить до 99, " \
            "а потом вести себя ОЧЕНЬ осторожно."
        else:
            message = "Вы ввели неправлильный пароль так что я не могу " \
            "поделиться тайой с вами."
        self.secret_txt.delete(0,0, END)
        self.secret_txt.insert(0,0, message)
# основная часть
root = Tk()
root.title("Долгожитель")
root.geometry('300x150')
# подсоединею элиметы окна
app = Application(root)
# Старт окна
root.mainloop()



Но выходит ошибка
self.secret_txt.delete(0,0, END)
TypeError: delete() takes from 2 to 3 positional arguments but 4 were given

как исправить спасибо заранее

Офлайн

#2 Ноя. 18, 2015 14:16:46

hizel
От:
Зарегистрирован: 2008-08-04
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите найти ошибку в коде

у .delete только два параметра

self.secret_txt.delete(0, END)



Офлайн

#3 Ноя. 18, 2015 14:33:08

fox85
Зарегистрирован: 2014-05-30
Сообщения: 56
Репутация: +  -1  -
Профиль   Отправить e-mail  

Помогите найти ошибку в коде

Что два параметра я удалил его теперь выдает вот что


Exception in Tkinter callback
Traceback (most recent call last):
File “C:\Users\filipp\AppData\Local\Programs\Python\Python35-32\lib\tkinter\__init__.py”, line 1549, in __call__
return self.func(*args)
File “CUsers/filipp/PycharmProjects/python3/longevity.py”, line 44, in reveal
self.secret_txt.delete(0, END)
File “C:\Users\filipp\AppData\Local\Programs\Python\Python35-32\lib\tkinter\__init__.py”, line 2984, in delete
self.tk.call(self._w, ‘delete’, index1, index2)
_tkinter.TclError: bad text index “0”

Офлайн

#4 Ноя. 18, 2015 14:54:52

4kpt_III
Зарегистрирован: 2014-12-22
Сообщения: 999
Репутация: +  39  -
Профиль   Отправить e-mail  

Помогите найти ошибку в коде

self.secret_txt.delete(0.0, END)
self.secret_txt.insert(0.0, message)

P.S. Код ужасный. Почитайте по PEP8.
P.P.S. Для таких вопросов есть ветка GUI.

Отредактировано 4kpt_III (Ноя. 18, 2015 14:56:15)

Офлайн

#5 Ноя. 18, 2015 15:01:28

fox85
Зарегистрирован: 2014-05-30
Сообщения: 56
Репутация: +  -1  -
Профиль   Отправить e-mail  

Помогите найти ошибку в коде

Я сейчас читаю книгу Майкл Доусон - Программируем на Python - 2014
код списал от туда.

Спасибо за помощь

Отредактировано fox85 (Ноя. 18, 2015 15:10:23)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version