Tab order

Hi to all,

Where in the control can I set the tab order for the correct user navigation?

thank you

Daniel

Tab order is set in the same order you create the components in your code.

There are methods for changing the order after a component has been created -- See wx.Window.MoveBeforeInTabOrder() and wx.Window.MoveAfterInTabOrder().

-M

···

On Fri, 5 May 2006, Daniel Crespo wrote:

Hi to all,

Where in the control can I set the tab order for the correct user navigation?

thank you

Daniel

Thank you, I forgot to tell you that I tried it, but didn't work.

I tried:

...
self.txtName = wx.TextCtrl(bla,bla,bla)
self.txtLastName = wx.TextCtrl(bla,bla,bla)
self.txtLastName.MoveAfterInTabOrder(self.txtName)

I got:
return _core_.Window_MoveAfterInTabOrder(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in ..\..\src\common\wincmn.cpp(2536): MoveBefore/AfterInTabOrder(): win is not a sibling

Any ideas?

Daniel

···

----- Original Message ----- From: "Marc Hedlund" <marc@precipice.org>
To: <wxPython-users@lists.wxwidgets.org>
Sent: Friday, May 05, 2006 11:31 AM
Subject: Re: [wxPython-users] Tab order

Tab order is set in the same order you create the components in your code.

There are methods for changing the order after a component has been created -- See wx.Window.MoveBeforeInTabOrder() and wx.Window.MoveAfterInTabOrder().

-M

On Fri, 5 May 2006, Daniel Crespo wrote:

Hi to all,

Where in the control can I set the tab order for the correct user navigation?

thank you

Daniel

---------------------------------------------------------------------
To unsubscribe, e-mail: wxPython-users-unsubscribe@lists.wxwidgets.org
For additional commands, e-mail: wxPython-users-help@lists.wxwidgets.org

Daniel Crespo wrote:

Thank you, I forgot to tell you that I tried it, but didn't work.

I tried:

...
self.txtName = wx.TextCtrl(bla,bla,bla)
self.txtLastName = wx.TextCtrl(bla,bla,bla)
self.txtLastName.MoveAfterInTabOrder(self.txtName)

I got:
return _core_.Window_MoveAfterInTabOrder(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "wxAssertFailure" failed in ..\..\src\common\wincmn.cpp(2536): MoveBefore/AfterInTabOrder(): win is not a sibling

Do both controls have the same parent? What platform and wx version are you using?

This works for me in PyShell:

  >>> import wx
  >>> f = wx.Frame(None)
  >>> p = wx.Panel(f)
  >>> for i in range(5):
  ... t = wx.TextCtrl(p, -1 , str(i), (25, 20+30*i))
  ...

···

f.Show()

  >>> c = p.GetChildren()
  >>> c[4].MoveAfterInTabOrder(c[0])

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Remember that to get tab order navigation in your controls you must create them in a wx.Panel instead
of in a wx.Frame directly.

Greets !

···

On Fri, 5 May 2006 11:15:52 -0400 "Daniel Crespo" <dcrespo@grupozoom.com> wrote:

Hi to all,

Where in the control can I set the tab order for the correct user navigation?

thank you

Daniel

Felix wrote:

Remember that to get tab order navigation in your controls you must create them in a wx.Panel instead
of in a wx.Frame directly.

Or some other window that supports the wx.TAB_TRAVERSAL style.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!