GUI: принципы организации. GUI+PyGame?

Домашнее задание

  1. {i} Посмотреть документацию по SGC и примеры из состава дистрибутива (каталог examples в архиве)

  2. Научиться запускать примеры (должен срабатывать оператор import sgc):

    • Вариант 1: скопировать каталог sgc из архива в каталог с примерами (то же самое для собственных программ)

    • Вариант 2: установить модуль командой python setup.py install после распаковки архива

  3. Модифицировать программу рисования графика произвольной функции так, чтобы она использовала sgc

    • Обратите внимание, что «классический» диалог ввода состоит минимум из двух виджетов: текстовой строки (label, для «подсказки») и поля текстового ввода (input), но в SGC виджет InputBox включает в себя оба.

    • Ещё обратите внимание на то, что в SGC вместо pygame.display.set_mode() вызывается sgc.surface.Screen(); при этом результат set_mode() (surface для рисования) помещается в поле image создаваемого объекта. Таким образом, вместо

         screen = pygame.display.set_mode(size)
      надо использовать что-то вроде
         root = sgc.surface.Screen(size)
         screen = root.image
    • 2014-03-07-grafun-sgc.py

  4. <!> Модифицировать ещё какую-нибудь программу, требующую ввода.

  5. <!> Что-то украшения кнопок не очень красиво в SGC выглядят… Может, их улучшить? Кода-то не слишком-то много, а кусок, отвечающий за рисование рамочек и стенок, в каждом виджете вообще небольшой.

Условные обозначения


CategoryClass CategoryVmsh

LecturesVMSH/Python/2014-03-07 (последним исправлял пользователь FrBrGeorge 2014-03-14 14:55:51)