Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Python-Tkinter вызов модального окна  (Прочитано 4843 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Señor_Gaga

  • Автор темы
  • Забанен
  • Активист
  • *
  • Сообщений: 878
  • Ubuntu 12.04LTS & Linux Mint 13LTS "Maya"
    • Просмотр профиля
Python-Tkinter вызов модального окна
« : 25 Октября 2012, 11:23:27 »
Имеется форма сделанная в Tkinter.
Как вызвать из нее по нажатию кнопки модальное окно?
К примеру MessageBox c кнопками Ok Cantel

Оффлайн employe

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Re: Python-Tkinter вызов модального окна
« Ответ #1 : 25 Октября 2012, 15:05:43 »
Имеется форма сделанная в Tkinter.
Как вызвать из нее по нажатию кнопки модальное окно?
К примеру MessageBox c кнопками Ok Cantel

Вот здесь - http://younglinux.info/tkinter/dialogbox.php кое что про диалоговые окна. Только не знаю, там можно или нельзя делать окна именно модальными.

Оффлайн Señor_Gaga

  • Автор темы
  • Забанен
  • Активист
  • *
  • Сообщений: 878
  • Ubuntu 12.04LTS & Linux Mint 13LTS "Maya"
    • Просмотр профиля
Re: Python-Tkinter вызов модального окна
« Ответ #2 : 25 Октября 2012, 16:32:37 »
Нашел такой вариант. Не модальное, но сгодится для многих случаев.
# -*- coding: utf-8 -*-
#!usr/bin/env python

from Tkinter import *

makemodal = 1

def dialog():
    win = Toplevel()
    Label(win, text = "Новое окно").pack()
    Button(win, text = "Ok", command = win.destroy).pack()
    if makemodal:
        win.focus_set()
        win.grab_set()
        win.wait_window()
    print "dialog exit"

root = Tk()
Button(root, text = 'Главная форма', command = dialog).pack()
root.mainloop()



 

Страница сгенерирована за 0.015 секунд. Запросов: 21.