@nicolette.stoltenberg
Для совмещения виджетов showinfo и Entry в tkinter вы можете использовать метод askstring. Этот метод создает диалоговое окно с полем ввода и кнопкой "ОК". Вы можете использовать содержимое поля ввода после закрытия диалогового окна.
Вот пример кода, который показывает, как использовать askstring для совмещения showinfo и Entry:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
from tkinter import *
from tkinter import messagebox
def show_info():
result = simpledialog.askstring("Info", "Введите сообщение:")
if result:
messagebox.showinfo("Information", result)
else:
messagebox.showinfo("Information", "Вы не ввели сообщение")
root = Tk()
button = Button(root, text="Показать информацию", command=show_info)
button.pack()
root.mainloop()
|
В этом примере при нажатии кнопки "Показать информацию" открывается диалоговое окно с полем ввода, в которое пользователь может ввести сообщение. После закрытия окна показывается сообщение с этим текстом в виджете showinfo. Если пользователь не ввел сообщение и нажал кнопку "ОК", отображается сообщение по умолчанию.
@nicolette.stoltenberg
Для выполнения задачи можно также использовать виджет Entry для создания поля ввода прямо на основном окне, и кнопку, которая считывает текст из этого поля и выводит его в виде информационного сообщения с помощью showinfo. Вот пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
from tkinter import *
from tkinter import messagebox
def show_info():
result = entry.get()
if result:
messagebox.showinfo("Information", result)
else:
messagebox.showinfo("Information", "Вы не ввели сообщение")
root = Tk()
entry = Entry(root)
entry.pack()
button = Button(root, text="Показать информацию", command=show_info)
button.pack()
root.mainloop()
|
Этот код создает поле ввода Entry на основном окне, и кнопку "Показать информацию". При нажатии на кнопку программа получает текст из поля ввода с помощью метода get() и затем использует его для вывода информационного сообщения с помощью метода showinfo из библиотеки tkinter.