Git Product home page Git Product logo

pygubu's Introduction

[Leer en español] (LEEME.md)

Welcome to pygubu a GUI designer for tkinter

Pygubu is a RAD tool to enable quick & easy development of user interfaces for the python tkinter module.

The user interfaces designed are saved as XML, and by using the pygubu builder these can be loaded by applications dynamically as needed. Pygubu is inspired by Glade.

Installation

Pygubu requires python >= 2.7 (Tested only in python 2.7.3 and 3.2.3 with tk8.5)

Using zip tarball:

Download and extract the tarball. Open a console in the extraction path and execute:

python setup.py install

Using pip:

pip install pygubu

Usage

On unix like systems start the designer using:

pygubu-designer

On Windows use:

c:\Python34\Scripts\pygubu-designer.bat

Where 'c:\Python34' is your python installation directory.

Create an UI definition using pygubu-designer and save it to a file.

[helloworld.ui] (examples/helloworld.ui)

Then, create your aplication script as shown below:

#test.py
try:
    import tkinter as tk
except:
    import Tkinter as tk
import pygubu


class Application:
    def __init__(self, master):

        #1: Create a builder
        self.builder = builder = pygubu.Builder()

        #2: Load an ui file
        builder.add_from_file('helloworld.ui')

        #3: Create the widget using a master as parent
        self.mainwindow = builder.get_object('mainwindow', master)


if __name__ == '__main__':
    root = tk.Tk()
    app = Application(root)
    root.mainloop()

Documentation

Visit the pygubu wiki for more documentation.

An excellent tkinter reference is available here.

See the examples directory or watch this hello world example on video

History

Changes for version 0.9.6.7

  • Remove old pygubu.py script for old installations. Create pybugu-designer.bat file for windows platform. Fixes #38

Changes for version 0.9.6.6

  • Fixed bug: color value setting to None when presing Cancel on color selector.
  • Add '.png' format to Stockimage if tk version support it. fixes #36
  • Minor changes to main UI.

Changes for version 0.9.6.5

  • Fixed bug on menu creation.
  • Fixed issues #14 and #22
  • Added helper method to avoid call get_variable for every variable. refs #29

Changes for version 0.9.6.4

  • Fixed bug #33 "Wrong textvariable format when create ui file"

Changes for version 0.9.6.3

  • Use old menu preview on platforms other than linux (new preview does not work on windows)

Changes for version 0.9.6.2

  • Property editors rewritten from scratch
  • Improved menu preview
  • Added font property editor
  • Fixed menu issues

Changes for version 0.9.5.1

  • Add select hotkey to widget tree. (i - select previous item, k - select next item)
  • Copied menu example from wiki to examples folder.

Changes for version 0.9.5

  • Renamed designer startup script to pygubu-designer (see #20)
  • Fixed bugs.

Changes for version 0.9.4

  • Added Toplevel widget
  • Added generic Dialog widget
  • Rewrited scrolledframe widget internals, ideas and code taken from tkinter wiki.
  • Added more widget icons.
  • Fixed bugs.

Changes for version 0.9.3

  • Allow to select control variable type
  • Fixed some bugs.

Changes for version 0.9.2

  • Added more wiki pages.
  • Fixed issues #3, #4

Changes for version 0.9.1

  • Separate designer module from main package
  • Added menu to select current ttk theme
  • Fix color selector issues.

Changes for version 0.9

  • Add validator for pax and pady properties.
  • Improved ScrolledFrame widget.
  • Added more wiget icons.
  • Fix cursor type on preview panel.

Changes for version 0.8

  • Added translation support
  • Translated pygubu designer to Spanish

Changes for version 0.7

  • Added python 2.7 support
  • Added initial TkApplication class
  • Fixed some bugs.

First public version 0.6

pygubu's People

Contributors

alejandroautalan avatar zaazbb avatar ajasja avatar majensen avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.