【问题标题】:How can I add a title to TextCtrl widget in wxPython?如何在 wxPython 中为 TextCtrl 小部件添加标题?
【发布时间】:2012-05-12 21:48:08
【问题描述】:

看起来这很简单,但我找不到这样做的好方法。我正在寻找的只是为我在 wxPython 框架中拥有的更大的多行 TextCtrl 小部件提供一个很好的居中标题。似乎没有办法用实际的 TextCtrl 属性来做到这一点。所以我试图做这个 StaticText 标签,但我似乎无法很好地与 TextCtrl 控件对齐。现在,我将它们放在两个不同的 BoxSizer(wx.HORIZONTAL) 中,带有 Button 控件和 StaticText。也许这是我在 wxPython 中能做到的最好的事情?

【问题讨论】:

  • 发布一些代码是解释您尝试过的最佳方式。

标签: python wxpython


【解决方案1】:

我在我的代码中做了类似的事情。我认为您想在将 StaticText 添加到 sizer 时设置“wx.ALIGN_CENTER_HORIZONTAL”标志。这将使 StaticText 在其单元格内居中。通过在 TextCtrl 上设置 wx.EXPAND,我们说它应该是 sizer 的最大宽度,因此 StaticText 将相对于 TextCtrl 居中。

import wx

ID_SUBMIT = wx.NewId()

...

    sizer = wx.BoxSizer(wx.VERTICAL)
    centeredLabel = wx.StaticText(self, -1, 'Centered Label')
    sizer.Add(centeredLabel, flag=wx.ALIGN_CENTER_HORIZONTAL)

    mlTextCtrl = wx.TextCtrl(self, style = wx.TE_MULTILINE)
    sizer.Add(mlTextCtrl, flag=wx.EXPAND)

    submitButton = wx.Button(self, ID_SUBMIT,'Submit')
    sizer.Add(submitButton, flag=wx.ALIGN_RIGHT)

...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-12
    • 2011-08-16
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2012-07-13
    • 2018-11-25
    相关资源
    最近更新 更多