On Tue, Mar 9, 2010 at 6:50 AM, Fabio Zadrozny <fabi...@gmail.com> wrote: > On Tue, Mar 9, 2010 at 3:21 AM, David Arnold <dwarnol...@suddenlink.net> > wrote: >> All, >> OK. Think I've found the problem. I can redirect the output to a filename. >> app = wx.App(redirect=True,filename='output') >> However, I don't know how to redirect the output to the PyDev console. >> D. > > If you don't pass the filename, and only set redirect=True, doesn't it > redirect things properly to stderr/stdout? > > Cheers, > > Fabio >
Actually, on a 2nd thought, if you just set redirect=False, doesn't it work? Cheers, Fabio >> >> On Mar 8, 2010, at 4:54 PM, David Arnold wrote: >> >> All, >> >> And yet another situation. In this case, compiling using Aptana and Pydev, I >> can see a small window open in the upper left corner of my screen, but then >> quickly close. How can I access the information that I think is in that >> small window, but doesn't stick around long enough to view? >> >> import numpy as np >> import wx >> >> import matplotlib >> matplotlib.interactive(False) >> matplotlib.use('WXAgg') >> from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg >> from matplotlib.figure import Figure >> from matplotlib.pyplot import gcf, setp >> >> class Knob: >> pass >> >> class Param: >> >> def __init__(self, initialValue=None, minimum=0., maximum=1.): >> self.minimum = minimum >> self.maximum = maximum >> if initialValue != self.constrain(initialValue): >> raise ValueError('illegal initial value') >> self.value = initialValue >> self.knobs = [] >> >> def attach(self, knob): >> self.knobs += [knob] >> >> def set(self, value, knob=None): >> self.value = value >> self.value = self.constrain(value) >> for feedbackKnob in self.knobs: >> if feedbackKnob != knob: >> feedbackKnob.setKnob(self.value) >> return self.value >> >> def constrain(self, value): >> if value <= self.minimum: >> value = self.minimum >> if value >= self.maximum: >> value = self.maximum >> return value >> >> class SliderGroup(Knob): >> def __init__(self, parent, label, param): >> self.sliderLabel = wx.StaticText(parent, label=label) >> self.sliderText = wx.TextCtrl(parent, -1, style=wx.TE_PROCESS_ENTER) >> self.slider = wx.Slider(parent, -1) >> self.slider.SetMax(param.maximum * 1000) >> self.setKnob(param.value) >> >> sizer = wx.BoxSizer(wx.HORIZONTAL) >> sizer.Add(self.sliderLabel, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.ALL, >> border=2) >> sizer.Add(self.sliderText, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.ALL, >> border=2) >> sizer.Add(self.slider, 1, wx.EXPAND) >> self.sizer = sizer >> >> class FourierDemoFrame(wx.Frame): >> def __init__(self, *args, **kwargs): >> wx.Frame.__init__(self, *args, **kwargs) >> >> self.frequencySliderGroup=SliderGroup(self,label='Frequency f0:') >> self.amplitudeSliderGroup=SliderGroup(self,label='Amplitude a:') >> >> sizer=wx.BoxSizer(wx.VERTICAL) >> sizer.Add(self.frequencySliderGroup.sizer,0,wx.EXPAND|wx.ALIGN_CENTER|wx.ALL,border=5) >> sizer.Add(self.amplitudeSliderGroup.sizer,0,wx.EXPAND|wx.ALIGN_CENTER|wx.ALL,border=5) >> self.SetSizer(sizer) >> >> class App(wx.App): >> def OnInit(self): >> self.frame1=FourierDemoFrame(parent=None,title="Fourier >> Demo",size=(640,480)) >> self.frame1.Centre() >> self.frame1.Show() >> return True >> >> app=App() >> app.MainLoop() >> >> David. >> >> >> On Mar 7, 2010, at 1:40 PM, David Arnold wrote: >> >> All, >> >> Here is a similar situation: >> >> import wx >> >> ID_STAT = 1 >> >> ID_TOOL = 2 >> >> class CheckMenuItem(wx.Frame): >> >> def __init__(self, parent, id, title): >> >> wx.Frame.__init__(self, parent, id, title, size=(350, 250)) >> >> # create a menubar >> >> menubar = wx.MenuBar() >> >> # create file menu >> >> file = wx.Menu() >> >> # create view menu >> >> view = wx.Menu() >> >> # add items to view menu >> >> self.shst = view.Append(ID_STAT, 'Show statusbar', 'Show statusbar', >> kind=wx.ITEM_CHECK) >> >> self.shtl = view.Append(ID_TOOL, 'Show toolbar', 'Show toolbar', >> kind=wx.ITEM_CHECK) >> >> view.Check(ID_STAT,True) >> >> view.Check(ID_TOOL,True) >> >> # bindings >> >> self.Bind(wx.EVT_MENU,self.toggleStatusBar,id=ID_STAT) >> >> # add menus to menubar >> >> menubar.Append(file, '&File') >> >> menubar.Append(view, '&View') >> >> # add menubar to Frame >> >> self.SetMenuBar(menubar) >> >> # add toolbar >> >> self.toolbar = self.CreateToolBar() >> >> self.toolbar.AddLabelTool(3,'',wx.Bitmap('icons/calendar.png')) >> >> self.toolbar.Realize() >> >> # add status bar >> >> self.statusbar = self.CreateStatusBar() >> >> self.statusbar.Show() >> >> # center and show frame >> >> self.Centre() >> >> self.Show() >> >> def ToggleStatusBar(self,event): >> >> if self.shst.IsChecked(): >> >> self.statusbar.Show() >> >> else: >> >> self.statusbar.Hide() >> >> >> app = wx.App() >> >> CheckMenuItem(None, -1, 'Check Menu Item') >> >> app.MainLoop() >> >> Because I wrote toggleStatusBar instead of ToggleStatusBar in my binding, >> the GUI won't run, but no errors are reported anywhere in PyDev. >> >> What can I do in this situation other than struggle manually to find this >> little typo? >> >> D. >> >> >> On Mar 7, 2010, at 12:13 PM, David Arnold wrote: >> >> All, >> >> Here is a situation I find myself in frequently. The code throws no errors, >> but the GUI won't open. >> >> import wx >> >> class MenuExample(wx.Frame): >> >> def __init__(self, parent, id, title): >> >> wx.Frame.__init__(self, parent, id, title, size=(250, 200)) >> >> # this creates the menubar >> >> menubar = wx.MenuBar() >> >> # this creates main 'file' menu >> >> file = wx.Menu() >> >> # add an 'Open' submenu to 'file' menu >> >> open = wx.MenuItem(file, 1, '&Open\tCtrl+O') >> >> file.AppendItem(open) >> >> # add a 'Quit' submenu to 'file' menu >> >> quit = wx.MenuItem(file, 2, '&Quit\tCtrl+Q') >> >> file.AppendItem(quit) >> >> self.Bind(wx.EVT_MENU, self.onQuit, 2) >> >> # this adds the 'file' menu to the menubar >> >> menubar.Append(file, '&File') >> >> # this adds the menubar to the frame >> >> self.SetMenuBar(menubar) >> >> # center and show the frame >> >> self.Centre() >> >> self.Show() >> >> def onQuit(self,event): >> >> self.Close() >> >> app = wx.App() >> >> MenuExample(None, -1, 'Menu Example') >> >> app.MainLoop() >> >> >> I found the error. I should have: self.Bind(wx.EVT_MENU, >> self.onQuit, id=2) >> >> However, I am wondering if there is anything I can do with the PyDev >> debugger (or other strategy) to help locate this type of error when it >> happens. It is very frustrating when no errors are returned but the GUI >> won't run. >> >> David. >> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> Download Intel® Parallel Studio Eval >> >> Try the new software tools for yourself. Speed compiling, find bugs >> >> proactively, and fine-tune applications for parallel performance. >> >> See why Intel Parallel Studio got high marks during beta. >> >> http://p.sf.net/sfu/intel-sw-dev >> >> _______________________________________________ >> >> Pydev-users mailing list >> >> Pydev-users@lists.sourceforge.net >> >> https://lists.sourceforge.net/lists/listinfo/pydev-users >> >> >> ------------------------------------------------------------------------------ >> >> Download Intel® Parallel Studio Eval >> >> Try the new software tools for yourself. Speed compiling, find bugs >> >> proactively, and fine-tune applications for parallel performance. >> >> See why Intel Parallel Studio got high marks during beta. >> >> http://p.sf.net/sfu/intel-sw-dev >> >> _______________________________________________ >> >> Pydev-users mailing list >> >> Pydev-users@lists.sourceforge.net >> >> https://lists.sourceforge.net/lists/listinfo/pydev-users >> >> >> ------------------------------------------------------------------------------ >> Download Intel® Parallel Studio Eval >> Try the new software tools for yourself. Speed compiling, find bugs >> proactively, and fine-tune applications for parallel performance. >> See why Intel Parallel Studio got high marks during beta. >> http://p.sf.net/sfu/intel-sw-dev >> _______________________________________________ >> Pydev-users mailing list >> Pydev-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/pydev-users >> >> >> ------------------------------------------------------------------------------ >> Download Intel® Parallel Studio Eval >> Try the new software tools for yourself. Speed compiling, find bugs >> proactively, and fine-tune applications for parallel performance. >> See why Intel Parallel Studio got high marks during beta. >> http://p.sf.net/sfu/intel-sw-dev >> _______________________________________________ >> Pydev-users mailing list >> Pydev-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/pydev-users >> >> > ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Pydev-users mailing list Pydev-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pydev-users