From: Lawrence A. <la...@gm...> - 2011-06-22 05:12:25
|
On-line documentation is going to do a more thorough and accurate job than I can do :( ....try these http://wiki.wxpython.org/EventPropagation http://wiki.wxpython.org/self.Bind%20vs.%20self.button.Bind remembering PythonCard is a wrapper of wxpython Cheers, Lawrie On Wed, Jun 22, 2011 at 6:14 AM, hwg <hw...@ya...> wrote: > That's what I needed. Working perfectly now. (I also removed the > unnecessary wx import.) > I don't understand why I need the event.Skip(). If someone could explain, > it would be much appreciated. > > hwg > > ________________________________ > From: Lawrence Abbott <la...@gm...> > To: hwg <hw...@ya...> > Cc: pythoncard-users <pyt...@li...> > Sent: Tuesday, June 21, 2011 2:06 PM > Subject: Re: [Pythoncard-users] Dynamically change font size of a TextArea > > Try adding an > > event.Skip() > > As mentioned previously - no need for the wx import. > > Cheers, > Lawrie > > On Wed, Jun 22, 2011 at 1:43 AM, hwg <hw...@ya...> wrote: >> Lawrie, >> >> That works. Thanks! >> >> I still have a weird issue where the Slider doesn't give up focus. I >> start >> dragging it, and when I release it (mouseUp), the event handler fires and >> the font size changes. But I can't enter the TextArea, and the slider >> still >> moves around as I move the mouse, even with no mouse buttons pressed. I >> can't access the TextArea or the Menu, and I can't even close the >> PythonCard >> app window without going into the IDE and stopping the script from there. >> >> Any idea what's causing this? >> >> Complete code is attached. >> >> >> Thanks, >> hwg >> >> >> ________________________________ >> From: Lawrence Abbott <la...@gm...> >> To: hwg <hw...@ya...> >> Cc: pythoncard-users <pyt...@li...> >> Sent: Tue, June 21, 2011 7:45:50 AM >> Subject: Re: [Pythoncard-users] Dynamically change font size of a TextArea >> >> try >> font = self.components.TextArea1.GetFont() >> >> instead of >> font = self.components.TextArea1.font >> >> also you will need to ensure the slider output values are legitimate font >> sizes >> also should be no need to import wx with SetPointSize method >> >> Cheers, >> Lawrie >> >> >> On Tue, Jun 21, 2011 at 10:23 PM, hwg <hw...@ya...> wrote: >>> I tried both of the methods below: >>> I get the following error: >>> Traceback (most recent call last): >>> File "C:\Python25\lib\site-packages\PythonCard\widget.py", line 408, in >>> _dispatch >>> handler(background, aWxEvent) >>> File >>> >>> >>> "C:\Users\wsande\Documents\Warren\PythonScripts\PC_slider_text\pc_slider_text.py", >>> line 11, in on_Slider1_mouseUp >>> font.SetPointSize(sliderValue) >>> AttributeError: 'Font' object has no attribute 'SetPointSize' >>> >>> Here's the complete code: >>> # pc_slider_text.py >>> # try to change the size of text font in a test box using a slider >>> >>> from wx import * >>> from PythonCard import model >>> class MainWindow(model.Background): >>> def on_Slider1_mouseUp(self, event): >>> sliderValue = self.components.Slider1.value >>> print sliderValue >>> font = self.components.TextArea1.font >>> font.SetPointSize(sliderValue) >>> self.components.TextArea1.SetFont(font) >>> print self.components.TextArea1.font >>> >>> app = model.Application(MainWindow) >>> app.MainLoop() >>> >>> ________________________________ >>> From: Lawrence Abbott <la...@gm...> >>> To: hwg <hw...@ya...> >>> Sent: Monday, June 20, 2011 10:37 PM >>> Subject: Re: [Pythoncard-users] Dynamically change font size of a >>> TextArea >>> >>> A slightly cleaner way >>> >>> font = self.components.TextArea1.GetFont() >>> font.SetPointSize(16) >>> self.components.TextArea1.SetFont(font) >>> >>> Cheers, >>> Lawrie >>> >>> On Tue, Jun 21, 2011 at 12:26 PM, Lawrence Abbott <la...@gm...> >>> wrote: >>>> Hi, >>>> >>>> self.components.TextArea1.font_size = sliderValue >>>> >>>> doesnt work for me >>>> >>>> print self.components.TextArea1.font.size >>>> >>>> gives a dictionary of font attributes, but I can't get them to update >>>> either >>>> >>>> import wx >>>> >>>> font_size =16 >>>> >>>> font1 = self.components.TextArea1.GetFont() >>>> font2 = wx.Font(font_size, font1.Family, font1.Style, font1.Weight) >>>> self.components.TextArea1.SetFont( font2 ) >>>> >>>> seems to work >>>> >>>> HTH, >>>> Lawrie >>>> >>>> On Mon, Jun 20, 2011 at 2:27 AM, hwg <hw...@ya...> wrote: >>>>> I tried: >>>>> >>>>> self.components.TextArea1.font_size = sliderValue >>>>> It doesn't throw an exception, but it doesn't change the font size, >>>>> either. >>>>> Also, oddly, the slider never seems to lose focus. It keeps sliding >>>>> back >>>>> and forth even after the mouse is released and no longer over the >>>>> slider. I >>>>> can't get focus on the TextArea. >>>>> >>>>> >>>>> - hwg >>>>> >>>>> >>>>> ________________________________ >>>>> From: "ec...@gm..." <ec...@gm...> >>>>> To: hwg <hw...@ya...> >>>>> Cc: "pyt...@li..." >>>>> <pyt...@li...> >>>>> Sent: Saturday, June 18, 2011 11:45 PM >>>>> Subject: Re: [Pythoncard-users] Dynamically change font size of a >>>>> TextArea >>>>> >>>>> font is not a dictionary. It's a class. Try font._size >>>>> >>>>> On 6/17/2011 1:23 PM, hwg wrote: >>>>> >>>>> from PythonCard import model >>>>> class MainWindow(model.Background): >>>>> def on_Slider1_mouseUp(self, event): >>>>> sliderValue = self.components.Slider1.value >>>>> self.components.TextArea1.font['size'] = sliderValue >>>>> >>>>> app = model.Application(MainWindow) >>>>> app.MainLoop() >>>>> >>>>> -- >>>>> Kim Cheung >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> EditLive Enterprise is the world's most technically advanced content >>>>> authoring tool. Experience the power of Track Changes, Inline Image >>>>> Editing and ensure content is compliant with Accessibility Checking. >>>>> http://p.sf.net/sfu/ephox-dev2dev >>>>> _______________________________________________ >>>>> Pythoncard-users mailing list >>>>> Pyt...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/pythoncard-users >>>>> >>>>> >>>> >>> >>> >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> EditLive Enterprise is the world's most technically advanced content >>> authoring tool. Experience the power of Track Changes, Inline Image >>> Editing and ensure content is compliant with Accessibility Checking. >>> http://p.sf.net/sfu/ephox-dev2dev >>> _______________________________________________ >>> Pythoncard-users mailing list >>> Pyt...@li... >>> https://lists.sourceforge.net/lists/listinfo/pythoncard-users >>> >>> >> > > > |