DMarlon Studio

Advanced tkinter course

For those who know the basics: the techniques used in real projects. In DMarlon Studio, tkinter is the Desktop (Python) target: drag components from the palette onto the form, set their properties in the inspector and the studio writes this same tkinter code.

Start
  1. 1Canvas: shapes and textDraw rectangles, ovals, polygons, lines, arcs and text on a tkinter Canvas, and understand its coordinates, item ids and tags.Lesson 1
  2. 2A bar chartDraw a bar chart on a tkinter Canvas from a dictionary of data: scale, grid lines, axes and labels.Lesson 2
  3. 3Images made in codeCreate tkinter images without files: tk.PhotoImage, put() to paint pixels and zoom() to enlarge them, shown in a label and a button.Lesson 3
  4. 4Treeview as a tableShow data in rows and columns with tkinter's ttk.Treeview: columns, headings, alignment, coloured rows and a row selected from code.Lesson 4
  5. 5Treeview as a treeBuild a folder tree with tkinter's ttk.Treeview: parent and child nodes, open or closed branches and a recursive function.Lesson 5
  6. 6Progress barsShow how a task is going with tkinter's ttk.Progressbar: determinate mode with value and maximum, indeterminate mode and vertical bars.Lesson 6
  7. 7Tabs with NotebookOrganise a tkinter window into tabs with ttk.Notebook: pages, a disabled tab, the starting tab and the tab-changed event.Lesson 7
  8. 8Resizable panesSplit a tkinter window into panes the user resizes by dragging, with ttk.Panedwindow: horizontal, vertical, nested and weighted.Lesson 8
  9. 9The menu barBuild a tkinter window's menu bar with tk.Menu: cascading menus, separators, shortcuts, check items and radio items.Lesson 9
  10. 10Context menu and menu buttonsOpen a menu on right-click in tkinter (tk_popup) and use ttk.Menubutton and tk.OptionMenu to pick options inside the window.Lesson 10
  11. 11The status barAdd a status bar to a tkinter window: a frame at the bottom with sunken labels that are updated from code.Lesson 11
  12. 12A toolbar with iconsBuild a ribbon-like row of buttons in tkinter: groups with LabelFrame and buttons with icons drawn in code with PhotoImage.Lesson 12
  13. 13Secondary windowsOpen more windows in a tkinter application with Toplevel: title, size and position, modal windows and destroy() to close them.Lesson 13
  14. 14Message and input dialogsUse tkinter's messagebox and simpledialog: notices, questions and input prompts, and what each function returns when closed.Lesson 14
  15. 15File and colour dialogsPick files, folders and colours with tkinter's filedialog and colorchooser, and learn what each dialog returns on OK or Cancel.Lesson 15
  16. 16Timers with after()Schedule work over time with tkinter's after(): a countdown that repeats every second, pauses with after_cancel and never blocks the window.Lesson 16
  17. 17Events and bindRespond to the mouse and keyboard in tkinter with bind: clicks, double clicks, motion, the mouse leaving and keys, with each event's data.Lesson 17
  18. 18Control variables and traceUse tkinter's StringVar, IntVar and BooleanVar with trace_add to recalculate a live total every time a field changes.Lesson 18
  19. 19Validating inputValidate tkinter fields with validate and validatecommand: reject invalid keys and flag errors with the invalid state and a red style.Lesson 19
  20. 20Project: a product listFinal tkinter project: a small CRUD app for products with a Treeview, a form, a menu bar and a status bar.Lesson 20