ich habe folgendes Problem: Um mit Python ein Auswertefile eines FEM- Programmes zu steuern brauche ich eine zweistufige Arbeitsweise. Erstens will ich einen Vorgang aufrufen, Dann innerhalb des Programmes Werte eingeben, dann das Pythonscript weiter ausführen. Dafür habe ich ein Beispiel im Tkinter- Handbuch gefunden, mit welchem ich arbeiten will. Daß wird, so wie ich es verstanden habe über eine .bind funktion realisiert, das bei einem Ereignis eine Funktion def callback... ausgeführt wird. In diese Funktion wollte ich ganz einfach meine Kommandos für die zweite Stufe "hineinmogeln". Ich zeige mal den bisherigen Quelltext:
Code: Alles auswählen
#!/usr/bin/env python
# -*- encoding: latin-1 -*-
from py_post import *
from py_mentat import *
from Tkinter import *
root=Tk()
def main(fname):
py_send("*set_pathplot_path")
return
def callback(event):
print "a"
py_send("#")
py_send("*pathplot_add")
frame=Frame(root,width=100,height=100)
frame.bind("<Button-1>",callback)
frame.pack()
root.mainloop()
if __name__=='__main__':
py_connect("",40007)
main('/home/tfr002/test/schraegwand2_job2.t16')
Leider schickt er mir folgende Fehlermeldung:
kann mir jemand einen Tip geben oder hat jemand eine andere Möglichkeit? Den Frame erzeugt er problemlos, die Fehlermeldung kommt beim Anklicken des Feldes.Error on send...
Exception in Tkinter callback
Traceback (innermost last):
File ".../ /Tkinter.py, line 764, in __call__
return Apply(self.func,args)
File ".../nodes2.py", line 21, in callback py_send("#")
SystemError: NULL result without error in call_object
Ich danke für jede Hilfe!