Fabio, Perfect! Thanks.
D. On Mar 9, 2010, at 1:52 AM, Fabio Zadrozny wrote: > 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 ------------------------------------------------------------------------------ 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