468,107 Members | 1,314 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,107 developers. It's quick & easy.

wxPython TextCtrl - weird scrolling behavior

I have a TextCtrl which is set to be multi-line. I have a function
say, updateText(msg), which takes some string and appends it to the
text control...

txtControl.AppendText(msg)

.....however, if the text that I am appending would cause the scroll
bars to appear/or scroll since the text is long the textcontrol appears
to be blank, until you click on the scroll bar...then the text appears.
Any ideas? is this is a sizer problem or a TextCtrl issue??

thanks

Oct 30 '06 #1
10 3814
abcd wrote:
I have a TextCtrl which is set to be multi-line. I have a function
say, updateText(msg), which takes some string and appends it to the
text control...

txtControl.AppendText(msg)

....however, if the text that I am appending would cause the scroll
bars to appear/or scroll since the text is long the textcontrol appears
to be blank, until you click on the scroll bar...then the text appears.
Any ideas? is this is a sizer problem or a TextCtrl issue??

thanks
Don't know for sure, but you can try calling the Refresh() method on the
text control and see if that fixes it.
Oct 30 '06 #2
On Oct 30, 2:52 pm, John Salerno <johnj...@NOSPAMgmail.comwrote:
Don't know for sure, but you can try calling the Refresh() method on
the
text control and see if that fixes it.
Didn't make a difference. Not sure what the problem is, I am wondering
if it is a layout issue since that is my weak spot with wxPython.

sizerTextPanel =
wx.StaticBoxSizer(self.sizerTextPanel_staticbox, wx.HORIZONTAL)
sizerTextPanel .Add(self.textPane, 1, wx.ALL|wx.EXPAND, 2)
self.textPanel.SetAutoLayout(True)
self.textPanel.SetSizer(sizerTextPanel )
sizerTextPanel .Fit(self.textPanel)
sizerTextPanel .SetSizeHints(self.textPanel)
sizerMainPanel.Add(self.textPanel, 3, wx.ALL|wx.EXPAND, 0)
not sure if that means anything to anyone :)

Oct 30 '06 #3
abcd wrote:
sizerMainPanel.Add(self.textPanel, 3, wx.ALL|wx.EXPAND, 0)
Your best bet may be to post to wx************@lists.wxwidgets.org

But one question that comes to mind is, do you not add sizerTextPanel to
sizerMainPanel? I think all sub-sizers should be added to the main
sizer, unless there's some weird reason I don't know of.

If you post to the wxPython mailing list, you might want to include more
of your code so we can see the bigger picture.
Oct 30 '06 #4
But one question that comes to mind is, do you not add sizerTextPanel to
sizerMainPanel? I think all sub-sizers should be added to the main
sizer, unless there's some weird reason I don't know of.
well i set the sizer on the textPanel and then I add the textPanel to
sizerMainPanel

Oct 30 '06 #5
abcd wrote:
>But one question that comes to mind is, do you not add sizerTextPanel to
sizerMainPanel? I think all sub-sizers should be added to the main
sizer, unless there's some weird reason I don't know of.

well i set the sizer on the textPanel and then I add the textPanel to
sizerMainPanel
Ah, I see. Seems like it may be a sizer issue, since you are adding a
bunch of things together. I noticed that one object you refer to is
self.textPane, is that supposed to be self.textPanel?
Oct 30 '06 #6
On Oct 30, 3:47 pm, John Salerno <johnj...@NOSPAMgmail.comwrote:
>I noticed that one object you refer to is
self.textPane, is that supposed to be self.textPanel?
no, self.textPane is the actual wx.TextCtrl.

I used a GUI Builder to the layout stuff...perhaps that's my problem :)

is there a good site to refer to for how to use sizers? i am
essentially creating a chat window (textPane is the history of the
chat, then a textCtrl below it for typing a new message and a button
next to the input field and buttons below the input field).

Oct 30 '06 #7
abcd wrote:
On Oct 30, 3:47 pm, John Salerno <johnj...@NOSPAMgmail.comwrote:
>I noticed that one object you refer to is
self.textPane, is that supposed to be self.textPanel?

no, self.textPane is the actual wx.TextCtrl.

I used a GUI Builder to the layout stuff...perhaps that's my problem :)

is there a good site to refer to for how to use sizers? i am
essentially creating a chat window (textPane is the history of the
chat, then a textCtrl below it for typing a new message and a button
next to the input field and buttons below the input field).
After I watched the screencasts for how Dabo uses sizers, I really
understood them a lot better. I've never used Dabo itself for GUI
design, but the screencast, though it shows them in terms of that
program, still gives a great visual presentation of how sizers work in
general and I suggest you take a look at that:

http://leafe.com/screencasts/sizers1.html
http://leafe.com/screencasts/sizers2.html

P.S. I suggest you post the full code to the wxPython mailing list. I'll
take a look at it to see if anything strikes me, but also you will have
a ton of other (more experienced) people looking at it too, and I
guarantee they will spot your problem.
Oct 31 '06 #8
On Oct 31, 2006, at 3:22 PM, John Salerno wrote:
After I watched the screencasts for how Dabo uses sizers, I really
understood them a lot better. I've never used Dabo itself for GUI
design, but the screencast, though it shows them in terms of that
program, still gives a great visual presentation of how sizers work in
general and I suggest you take a look at that:

http://leafe.com/screencasts/sizers1.html
http://leafe.com/screencasts/sizers2.html
Thanks for the good feedback. It took me a while to wrap my brain
around sizers when I first started using them; now I hate working
without them!

Also, I wanted to mention that our visual Class Designer has another
helpful feature: you can right-click control to bring up a context
menu. One of the choices is 'Edit Sizer Settings...', which brings up
a dialog with all the relevant settings in one place. As you change
them in the dialog, the design surface updates so that you can see
the effect of your changes before you commit them. If you don't like
your changes, click 'Cancel' and things return to the way they were
before you started.

-- Ed Leafe
-- http://leafe.com
-- http://dabodev.com
Oct 31 '06 #9
thanks for the feedback, I am watching the screencasts, which are
helping already. I think I will try out the Dabo GUI tool since it
uses wxPython...and see if I can get the code I need from it.

thanks

Nov 1 '06 #10
On 1 Nov 2006 04:54:32 -0800, abcd <co*******@gmail.comwrote:
thanks for the feedback, I am watching the screencasts, which are
helping already. I think I will try out the Dabo GUI tool since it
uses wxPython...and see if I can get the code I need from it.
I think you'll be very impressed. Those guys are creating an excellent
tool, and I've found that I can create pretty complicated UIs in a
very, very short time with the Class Designer.

--

# p.d.
Nov 1 '06 #11

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

3 posts views Thread by Logan | last post: by
1 post views Thread by sillyemperor | last post: by
1 post views Thread by PeterG | last post: by
1 post views Thread by Bailu | last post: by
4 posts views Thread by Jimmy | last post: by
1 post views Thread by Solo | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.