Найти - Пользователи
Полная версия: Glade создание мастера
Начало » GUI » Glade создание мастера
1
vladimirse
Доброго времени суток!
Подскажите пожалуйста, как при помощи Glade создать некий мастер, например мастер создания пользователя. Пробовал использовать Gtk.Assistant но ни как не могу разобраться как на него добавить\удалить виджеты. В общем суть задачи получить окно с полями для ввода, чекбоксами и кнопками “далее” и “назад”. При нажатии на кнопку “далее”, центральная часть окна меняется, появляются новые поля для ввода и чекбоксы, при нажатии на кнопку “назад” можно было бы посмотреть предыдущие элементы с введенными данными.
Пробовал просто рисовать несколько окон, но получается мягко говоря коряво.
Может есть уже готовый пример или описание как сделать подобное, поделитесь пожалуйста.
b_oss
Набрасал пример простенький.

#!/usr/bin/python
# -*- coding:utf-8 -*-
from gi.repository import Gtk
class Handler:
    def on_assistant_delete_event(self, *args):
        Gtk.main_quit(*args)
    def on_assistant_close(self, widget):
        text = builder.get_object('entry1').get_text()
        print 'ФИО:', text
        text = builder.get_object('entry2').get_text()
        print 'Дата рождения:', text
        self.on_assistant_delete_event()
builder = Gtk.Builder()
builder.add_from_file("assistant.ui")
builder.connect_signals(Handler())
window = builder.get_object("assistant")
box = builder.get_object('box1')
page = window.append_page(box)
window.set_page_title(box, "Page 1")
window.set_page_type(box, Gtk.AssistantPageType.INTRO)
window.set_page_complete(box, True)
box = builder.get_object('box2')
page = window.append_page(box)
window.set_page_title(box, "Page 2")
window.set_page_complete(box, True)
box = builder.get_object('box3')
page = window.append_page(box)
window.set_page_title(box, "Page 3")
window.set_page_type(box, Gtk.AssistantPageType.SUMMARY)
window.set_page_complete(box, True)
window.show_all()
Gtk.main()
Glade файл, смотри в прикрепленных.
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