wxPython中的SearchCtrl看起来不同

时间:2016-02-10 19:45:36

标签: python wxpython

我想在wxPython中获得一个searchctrl。但是我没有得到我想要的东西。

我明白了:

enter image description here

但我希望像SearchCtrl一样:

enter image description here

我知道没有太大的区别,只是出于视觉原因。 我将我的SearchCtrl声明为:

self.searchControl = wx.SearchCtrl(panel, -1, style=wx.TE_PROCESS_ENTER)

有人知道如何声明它以获得我想要的SearchCtrl吗?

1 个答案:

答案 0 :(得分:2)

我可以在你拥有的和你想要的东西之间看到三个不同之处:

  1. 取消按钮(圆圈中的X)
  2. 菜单指示器(放大镜旁边的箭头)。
  3. “搜索”一词的位置
  4. 这三个差异都不会受到声明的影响。

    要显示取消按钮,请致电:

    self.searchControl.ShowCancelButton(True)
    

    要显示菜单指示符,请致电:

    self.SetMenu(menu)
    

    要使文本显示在正确的位置,请阻止sizer垂直调整控件的大小。

    例如:

    #!/usr/bin/env python
    import wx
    
    app = wx.App(False)
    frame = wx.Frame(None, wx.ID_ANY, "Hello World")
    sizer = wx.BoxSizer(wx.HORIZONTAL)
    
    menu = wx.Menu()
    menu.Append(wx.ID_ABOUT, 'About')
    
    search = wx.SearchCtrl(frame)
    search.ShowCancelButton(True)
    search.SetMenu(menu)
    
    sizer.Add(search, 0)
    frame.SetSizer(sizer)
    frame.SetAutoLayout(1)
    sizer.Fit(frame)
    frame.Show()
    app.MainLoop()
    

    得出这个:

    enter image description here