Which Graphics User Interface (GUI) would you recommend for a beginner? I have seen some examples of Tkinter, wxPython and GTK.
As a beginner, start working with Tkinter to get a feeling what GUI programming is all about. Tkinter is already present in the normal Python installation. If you need fancier widgets later, download wxPython and experiment with that. PyGTK/GTK works best with Linux, the Windows version needs a lot of additional downloads and the installation process is cumbersome.
I will check Tkinter programming first. Any examples that show the difference between console and GUI programming?
Here are simple programs. The console version:
# console sales tax program while True: price = float(raw_input("Enter purchase price: ")) # prevent division by zero error if price != 0: break else: print "price can not be zero!" tax = float(raw_input("Enter sales tax paid: ")) percent = 100 * tax / price print "You paid %0.3f%s sales tax" % (percent, '%')
Now the Tkinter GUI version:
# Tkinter sales tax program from Tkinter import * import tkSimpleDialog # the basic window root = Tk() # create label for result label1 = Label(root) # position the label in window label1.grid(row=0, column=0) # ask for needed data with dialog window # the askfloat dialog window makes certain you entered floating point value # and also prevents you from entering zero which would give divide by zero error price = tkSimpleDialog.askfloat("Price", "Enter purchase price:", parent=root, minvalue=0.01) tax = tkSimpleDialog.askfloat("Tax", "Enter sales tax paid:", parent=root) percent = 100 * tax / price result = "You paid %0.3f%s sales tax" % (percent, '%') # display result string in label1 label1.config(text=result) # event loop needed by GUI, checks for mouse and key events root.mainloop()
Here is the Tkinter sales tax program without the dialog popups ...
# a rather generic Tkinter GUI template for calculations # uses Entry() for data input and Button() to start calculation from Tkinter import * def calculate(): try: # get the enter1 and enter2 values price = float(enter1.get()) tax = float(enter2.get()) # do the calculation percent = 100 * tax / price result = "You paid %0.3f%s sales tax" % (percent, '%') # display the result string label3.config(text=result) except ValueError: label3.config(text='Enter numeric values!') except ZeroDivisionError: label3.config(text='Price can not be zero!') enter1.focus_set() root = Tk() # window geometry is width x height + x_offset + y_offset root.geometry("200x150+30+30") # first entry with label label1 = Label(root, text='Enter purchase price:') label1.grid(row=0, column=0) enter1 = Entry(root, bg='yellow') enter1.grid(row=1, column=0) # second entry with label label2 = Label(root, text='Enter sales tax paid:') label2.grid(row=2, column=0) enter2 = Entry(root, bg='yellow') enter2.grid(row=3, column=0) # do the calculation by clicking the button btn1 = Button(root, text='Calculate Percent', command=calculate) btn1.grid(row=4, column=0) # display the result in this label label3 = Label(root) label3.grid(row=5, column=0) # start cursor in enter1 enter1.focus() # value has been entered in enter1 now switch focus to enter2 enter1.bind('<Return>', func=lambda e: enter2.focus_set()) root.mainloop()
I Currently working on a project to schedule installers to do installations.
When scheduling the user will select the day of intall and if the number of days the ...
How to escape the double quotes using XSLT:
My xls file converting xml file into csv file.
my xml node is as below:
<?xml version="1.0" encoding="ISO-8859-1"?> <TRADING_TITLE><TITLE>SBU</TITLE><DESCRIPTION><![CDATA[Simply Be Inquiries]]></DESCRIPTION><REGISTERED><NAME><![CDATA[Speciality Home ...
Who can help me with the following
For Each Con As Control In GroupBox1.Controls If Con.GetType Is GetType(Button) Then Con.BackColor = SystemColors.Control Con.UseVisualStyleBackColor = True End If Next
Can someone ...