Как вы устанавливаете функции для кнопки в Tkinter?

моя функция не будет выполняться для назначенной кнопки. Я использую код визуальной студии. Для защита myClick(): myLabel =Label(окно, текст..., команда...

этого не произойдет. в коде визуальной студии «myLabel» становится серым и имеет ошибку «не доступен Pylance»

# add response to input


def myClick():
    myLabel = Label(window, text = "Hello" + e.get() + "...      ")
myLabel.pack

# create button
myButton = Button(window, text = "next", command=myClick, fg = "black")
myButton.pack()

Откуда ты знаешь "it wont occur."?

quamrana 29.10.2022 21:12

он не запускается, когда я запускаю программу. кнопка ничего не делает :/

dumbwizard 29.10.2022 21:13

Откуда вы знаете?

quamrana 29.10.2022 21:14

когда я нажимаю на кнопку ничего не происходит

dumbwizard 29.10.2022 21:15

И это ваш настоящий код? Строка myLabel.pack кажется неправильной.

quamrana 29.10.2022 21:16

о точно это ()

dumbwizard 29.10.2022 21:17
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
6
52
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Ответ принят как подходящий

Я думаю, это просто ты не звонишь pack(). Когда я исправляю это, я вижу, что появляется ярлык:

def myClick():
    myLabel = Label(window, text = "Hello" + e.get() + "...      ")
    myLabel.pack()

Я думаю, вы должны упаковать myLabel внутри функции и добавить "()" в конце:

def myClick():
    myLabel = Label(window, text = "Hello" + e.get() + "...      ")
    myLabel.pack()

# create button
myButton = Button(window, text = "next", command=myClick, fg = "black")
myButton.pack()

Я вижу две проблемы с вашим кодом. Во-первых, myLabel.pack() не выровнено как myLabel. Вы должны вызвать метод pack() в функции myClick().

Во-вторых, не забудьте использовать скобки для вызова метода pack() в myLabel.

Вы можете увидеть рабочий пример здесь.

from tkinter import *

window = Tk()

def myClick():
    myLabel = Label(window, text = "Hello")
    myLabel.pack() # put this into the same level as myLabel

# create button
myButton = Button(window, text = "next", command=myClick, fg = "black")
myButton.pack()

window.mainloop()

Вы не вызываете функцию пакета. Вы написали myLabel.pack без скобок — () — поэтому Python не распознает это как функцию.

Ваш код, улучшенный:

# add response to input


def myClick():
    myLabel = Label(window, text = "Hello" + e.get() + "...      ")
    myLabel.pack()

# create button
myButton = Button(window, text = "next", command=myClick, fg = "black")
myButton.pack()

Спасибо за вопрос, продолжайте в том же духе!

Другие вопросы по теме