MyTetra Share
Делитесь знаниями!
Программа с использованием таблицы компоновки
Время создания: 07.05.2017 11:51
Текстовые метки: example, test
Раздел: Python - PyGTK - Теория - таблицы компоновки
Запись: xintrea/mytetra_db_mcold/master/base/1494147112ju4nh0gq3o/text.html на raw.githubusercontent.com
#!/usr/bin/env python
# --*-- coding:utf-8 --*--
# example packbox.py

import gi
gi.require_version(
'Gtk', '3.0')
#from gi.repository.Gtk import *

import gi.repository.Gtk as gtk


class Table:
# Наш callback.
# Данные передаваемые этому методу выводятся в stdout
def callback(self, widget, data=None):
print("Привет снова - %s была нажата" % data)

# Этот callback завершает программу
def delete_event(self, widget, event, data=None):
gtk.main_quit()
return False

def
__init__(self):
# Создаём новое окно
self.window = gtk.Window()

# Устанавливаем заголовок окна
self.window.set_title("Table")

# Устанавливаем обработчик для delete_event, который немедленно
# Завершает работу GTK.
self.window.connect("delete_event", self.delete_event)

# Устанавливаем границу для окна
self.window.set_border_width(20)

# Создаём таблицу 2х2
table = gtk.Table(2, 2, True)

# Размещаем таблицу в главном окне
self.window.add(table)

# Создаём первую кнопку
button = gtk.Button("кнопка 1")

# По нажатии кнопки мы вызываем метод "callback"
# с указателем на "кнопка 1" в виде аргумента
button.connect("clicked", self.callback, "кнопка 1")

# Вставляем кнопку 1 в верхнюю левую ячейку таблицы
table.attach(button, 0, 1, 0, 1)

button.show()

# Создаём вторую кнопку

button = gtk.Button("кнопка 2")

# По нажатию кнопки мы вызываем метод "callback"
# с указателем на "кнопка 2" как аргумент
button.connect("clicked", self.callback, "кнопка 2")
# Вставляем кнопку 2 в верхнюю правую ячейку таблицы.
table.attach(button, 1, 2, 0, 1)

button.show()

# Создаём кнопку "Выход"
button = gtk.Button("Выход")

# Когда кнопка нажата, мы вызываем функцию main_quit
# и программа завершает свою работу
button.connect("clicked", lambda w: gtk.main_quit())

# Вставляем кнопку выхода в 2 нижние ячейки.
table.attach(button, 0, 2, 1, 2)

button.show()

table.show()
self.window.show()


def main():
gtk.main()
return 0


if __name__ == "__main__":
Table()
main()
Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования