Giter Club home page Giter Club logo

appjar's Introduction

appJar

Simple tKinter GUIs in Python


PyPI Version Build Status Test Coverage Code Health Code Climate irc

Download Here: https://github.com/jarvisteach/appJar/raw/appJar/releases/appJar.zip

Docs here: http://appJar.info

This provides a library for implementing easy GUIs...

Installation:

  • Download the ZIP file (click the big green button) & unzip it
  • Add it to your path:
    • make a folder in your home directory, called PYLIB, and put appJar inside it
    • On mac/linux add this to your .bashrc: export PYTHONPATH=~/PYLIB:$PYTHONPATH
    • On Windows, add a new environment variable
  • Give it a twirl:
    • Check the docs folder, for a couple of PDFs with help.
    • Check the Lessons folder, for some example code.

Example:

from appJar import gui  
app = gui("Example")  
app.addLabel("label1", "Hello World")  
app.go()  

or (using context managers):

from appJar import gui  
with gui("Example") as app:
    app.addLabel("label1", "Hello World")  

or (using simple naming):

from appJar import gui  
with gui("Example") as app:
    app.label("Hello World")  

Reasoning:

  • Designed to be as easy as possible, yet still provide a lot of tkinter functionality

  • Provides 3 functions for most widgets:

    • add(name, value) this adds a new widget (usually with a name and a value)
    • set(name, value) this updates the value of the named widget
    • get(name) this gets the value of the named widget
  • Uses grid layout

  • When adding widgets, up to 4 numerical "positions" can be supplied:

    • column - the coloumn to appear in, starting at 0
    • row - row to appear in, stating at 0
    • columnspan - how many columns to span across
    • rowspan - how many rows to span down
  • Provides loads of extra bits and pieces outside of core tkinter

    • Some of this was from the excellent resources @ http://effbot.org
    • Some of this was from slashdot examples of how to solve common problems
    • Some of this has been incorporated from other people's modules:
      • ToolTip support form Michael Lange
      • png support using James Wright's tkinter-png and Johann C. Rocholl's png.py libraries
      • jpeg support using NanoJPEG from Martin J. Fiedler
  • I've tried to get as much functionality into this library as possible, without requiring any other modules

appjar's People

Contributors

a-deluna avatar bluekenny avatar cowsay652 avatar frakman1 avatar gotocode avatar jacobthetechy avatar jarvisteach avatar jonwchapman avatar simoneu01 avatar wapmorgan avatar yotabits 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.