Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #40859 > unrolled thread
| Started by | prquinn@gmail.com |
|---|---|
| First post | 2013-03-08 06:04 -0800 |
| Last post | 2013-03-08 16:12 +0000 |
| Articles | 2 — 2 participants |
Back to article view | Back to comp.lang.python
Tkinter GUI Question-Infinite Loop prquinn@gmail.com - 2013-03-08 06:04 -0800
Re: Tkinter GUI Question-Infinite Loop MRAB <python@mrabarnett.plus.com> - 2013-03-08 16:12 +0000
| From | prquinn@gmail.com |
|---|---|
| Date | 2013-03-08 06:04 -0800 |
| Subject | Tkinter GUI Question-Infinite Loop |
| Message-ID | <732589c8-7322-4b11-96dd-99808d40fc6f@googlegroups.com> |
Greetings,
I'm trying to run a simple Tkinter program that opens a program when you click a button. The code is listed below. I use a command to call a program that then calls a fortran program. However, when I click on the button, it opens the program but the menu of the program i'm calling goes into an infinite loop......the offending code seems to be in the button1Click module.
Any help is greatly appreciated.
Thanks
from Tkinter import *
import os, sys
from win32com.client import Dispatch
xlApp=Dispatch('Excel.Application')
_PSSBINPATH=r"C:\Program Files\PTI\PSSE32\PSSBIN"
os.environ['PATH']=_PSSBINPATH+';'+os.environ['PATH']
sys.path.insert(0,_PSSBINPATH)
import redirect; redirect.psse2py()
import psspy
class MyApp:
def __init__(self, parent):
self.myParent = parent ### (7) remember my parent, the root
self.myContainer1 = Frame(parent)
self.myContainer1.pack()
self.button1 = Button(self.myContainer1)
self.button1.configure(text="OK", background= "green")
self.button1.pack(side=LEFT)
self.button1.bind("<Button-1>", self.button1Click) ### (1)
self.button2 = Button(self.myContainer1)
self.button2.configure(text="Cancel", background="red")
self.button2.pack(side=RIGHT)
self.button2.bind("<Button-1>", self.button2Click) ### (2)
def button1Click(self,event): ### (3)
psspy.runiplanfile(r"C:\MNTACT\Contingency Program\work\contingency-31-4.irf")
if self.button1["background"] == "green": ### (4)
self.button1["background"] = "yellow"
else:
self.button1["background"] = "green"
def button2Click(self, event): ### (5)
self.myParent.destroy() ### (6)
root = Tk()
myapp = MyApp(root)
root.mainloop()
[toc] | [next] | [standalone]
| From | MRAB <python@mrabarnett.plus.com> |
|---|---|
| Date | 2013-03-08 16:12 +0000 |
| Message-ID | <mailman.3084.1362759137.2939.python-list@python.org> |
| In reply to | #40859 |
On 08/03/2013 14:04, prquinn@gmail.com wrote: > Greetings, > > I'm trying to run a simple Tkinter program that opens a program when > you click a button. The code is listed below. I use a command to > call a program that then calls a fortran program. However, when I > click on the button, it opens the program but the menu of the program > i'm calling goes into an infinite loop......the offending code seems > to be in the button1Click module. > > Any help is greatly appreciated. > You say "the menu *of the program i'm calling* goes into an infinite loop" (my emphasis), so perhaps the problem isn't in _your_ code. Try something simpler like this: import psspy psspy.runiplanfile(r"C:\MNTACT\Contingency Program\work\contingency-31-4.irf") Does the program you're calling still go into an infinite loop?
[toc] | [prev] | [standalone]
Back to top | Article view | comp.lang.python
csiph-web