中心wx.TextCtrl?

时间:2011-04-06 15:27:10

标签: python wxpython

我很难将文本集中在wx.TextCtrl中(如下面的照片插图所示)。 - 由于某种原因,它始终打印LEFT对齐,而不是CENTERED。

Illustration of desired output

有人可以指出我正确的“风格”或者告诉我我做错了什么?

import wx

class SimplePanel(wx.Panel):

    def __init__(self, parent, id):
        wx.Panel.__init__(self, parent, id, style=wx.BORDER_SUNKEN)
        myTextCtrl = wx.TextCtrl(self, -1,
                                 style=wx.TE_CENTRE,
                                 size=(100, -1), pos=(10, 10))

if __name__ == '__main__':
    app = wx.App()

    frame = wx.Frame(None, -1, 'Simple Panel') 
    myPanel = SimplePanel(frame, -1)
    frame.Show()

    app.MainLoop()

2 个答案:

答案 0 :(得分:1)

(澄清后编辑)

在wxPython中有一个错误,它破坏了某些操作系统的TE_CENTRE:

http://wxpython-users.1045709.n5.nabble.com/ANN-wxPython-2-8-9-1-td2367679.html

尝试更新到最新版本。

答案 1 :(得分:1)

这似乎在Windows上工作正常,但我使用OSX和Windows进行开发,wx.TE_CENTRE似乎不适用于OSX。这是多年前报道的缺陷(http://trac.wxwidgets.org/ticket/10010)。