![]() |
|
#1
|
|||
|
|||
Please repost the code using the [code][/code] tags. This will preserve the indentation which is need to run Python code.
|
#2
|
|||
|
|||
oh, i'm sorry. first time i'm posting here
![]() i've splitted my code to one files per class, but if you run this, it is showing my problem: Code:
import viz, wx #This class implements the GUI-Frame class MainFrame(wx.Frame): def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title) #Menubar menubar = wx.MenuBar() worldViz = wx.Menu() worldViz.Append(104, '&Simulation', 'Start a 3D-simulation') menubar.Append(worldViz, '&WorldViz') self.SetMenuBar(menubar) self.CreateStatusBar() wx.EVT_MENU(self, 104, self.onStart3D) #calls the embedded simulation def onStart3D(self, event): self.timer = wx.Timer(self, 5000) #Timer for updating the frames self.timer.Start(10) wx.EVT_TIMER(self, 5000, self.onTimer) viz.go(viz.EMBEDDED) simulation() #Manuel FrameUpdate def onTimer(self, event): viz.updateframe() #this is my test simulation def simulation(): viz.clearcolor(0.5, 0.5, 1.0) #Set ViewPoint view = viz.MainView view.setPosition(0, 1, -20) #Turn on the physics engine viz.phys.enable() #Add ground ground = viz.add('tut_ground.wrl') ground.collidePlane() #Exit-function def onkeydown(key): if key == '1': print 'onKeyDown() executed' viz.quit() viz.callback(viz.KEYDOWN_EVENT, onkeydown) def onexit(): print'onExit() executed' viz.quit() viz.callback(viz.EXIT_EVENT, onexit) #this is the starting class class MainApp(wx.App): def OnInit(self): frame = MainFrame(None,-1, 'Phantom') frame.Show(True) return True app = MainApp(0) app.MainLoop() del app |
#3
|
|||
|
|||
Hello? Can anybody help me?
|
#4
|
|||
|
|||
Are you trying to exit your entire application when the key is pressed, or just close the Vizard window?
If you are trying to exit the entire app, then you need to call the Close() method of your MainFrame class. If you want to just close the Vizard window, then this is not possible. You can only call viz.go() once, so you can only create a single Vizard window for the duration of your script. To deal with this limitation you can create the Vizard window during startup and make the window visible/hidden to simulate creating/destroying the window. |
#5
|
|||
|
|||
Thank you very mutch for this information. It helps me a lot. I try to exit the Vizard window and create another one while the main frame is running. But I will handle this by antoher way.
|
![]() |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
vizard quit automatically in full screen stereo mode | fuyonggang | Vizard | 3 | 09-15-2008 09:51 AM |
closing files on a force quit | vadrian | Vizard | 1 | 02-14-2005 11:38 AM |
embedded Vizard | tavaksai | Vizard | 5 | 12-21-2004 07:49 AM |