| Line 584: |
Line 584: |
| | import threading | | import threading |
| | </source> | | </source> |
| | + | == Python GUI Programming == |
| | + | *Tkinter: Tkinter is the Python interface to the Tk GUI toolkit shipped with Python. We would look this option in this tutorial. |
| | + | *wxPython: This is an open-source Python interface for wxWindows http://wxpython.org. |
| | + | *JPython: JPython is a Python port for Java which gives Python scripts seamless access to Java class libraries on the local machine http://www.jython.org. |
| | + | |
| | + | '''Tkinter''' |
| | + | <source lang="python"> |
| | + | #!/usr/bin/python |
| | + | |
| | + | import Tkinter |
| | + | top = Tkinter.Tk() |
| | + | # Code to add widgets will go here... |
| | + | top.mainloop() |
| | + | </source> |
| | + | '''Widgets''' |
| | + | *Button The Button widget is used to display buttons in your application. |
| | + | *Canvas The Canvas widget is used to draw shapes, such as lines, ovals, polygons and rectangles, in your application. |
| | + | *Checkbutton The Checkbutton widget is used to display a number of options as checkboxes. The user can select multiple options at a time. |
| | + | *Entry The Entry widget is used to display a single-line text field for accepting values from a user. |
| | + | *Frame The Frame widget is used as a container widget to organize other widgets. |
| | + | *Label The Label widget is used to provide a single-line caption for other widgets. It can also contain images. |
| | + | *Listbox The Listbox widget is used to provide a list of options to a user. |
| | + | *Menubutton The Menubutton widget is used to display menus in your application. |
| | + | *Menu The Menu widget is used to provide various commands to a user. These commands are contained inside Menubutton. |
| | + | *Message The Message widget is used to display multiline text fields for accepting values from a user. |
| | + | *Radiobutton The Radiobutton widget is used to display a number of options as radio buttons. The user can select only one option at a time. |
| | + | *Scale The Scale widget is used to provide a slider widget. |
| | + | *Scrollbar The Scrollbar widget is used to add scrolling capability to various widgets, such as list boxes. |
| | + | *Text The Text widget is used to display text in multiple lines. |
| | + | *Toplevel The Toplevel widget is used to provide a separate window container. |
| | + | *Spinbox The Spinbox widget is a variant of the standard Tkinter Entry widget, which can be used to select from a fixed number of values. |
| | + | *PanedWindow A PanedWindow is a container widget that may contain any number of panes, arranged horizontally or vertically. |
| | + | *LabelFrame A labelframe is a simple container widget. Its primary purpose is to act as a spacer or container for complex window layouts. |
| | + | *tkMessageBox This module is used to display message boxes in your applications. |
| | + | |
| | + | '''Standard attributes''' |
| | + | *Dimensions |
| | + | *Colors |
| | + | *Fonts |
| | + | *Anchors |
| | + | *Relief styles |
| | + | *Bitmaps |
| | + | *Cursors |
| | + | |
| | + | '''Geometry Management''' |
| | + | *The pack() Method - This geometry manager organizes widgets in blocks before placing them in the parent widget. |
| | + | *The grid() Method - This geometry manager organizes widgets in a table-like structure in the parent widget. |
| | + | *The place() Method -This geometry manager organizes widgets by placing them in a specific position in the parent widget. |