wxpython 双面板 window 显示信息
wxpython double paneled window to show information
我想在一个 window 上创建两个面板(参见示例绘制)。上面板由一个带有项目的滚动列表组成。当我单击一个项目时,底部面板会显示有关该项目的详细信息。使用静态和动态面板创建这样的 window 我需要做什么?什么 wx 对象?
或者也许有更简单的方法可以用 wx 实现我的目标?
谢谢。
您只需创建一个 wx.Panel
对象和一个方向设置为 wx.VERTICAL
的 wx.BoxSizer
即可。
然后为第一个顶级小部件添加一个 wx.ListCtrl
。父级将是面板,但您会将其添加到 sizer 对象。我实际上更喜欢使用 ObjectListView
而不是 wx.ListCtrl
,但它是 wxPython 的一个单独的附加组件。底部小部件可能是第二个 wx.ListCtrl
或者 wx.ListBox
当您创建第二个小部件时,只需调用它的 Hide()
方法,这样一开始它就不会显示。或者您可以仅在选择第一个小部件中的项目时创建第二个小部件。如果您创建它并隐藏第二个小部件,那么您将使用项目选择事件来显示它。
我想在一个 window 上创建两个面板(参见示例绘制)。上面板由一个带有项目的滚动列表组成。当我单击一个项目时,底部面板会显示有关该项目的详细信息。使用静态和动态面板创建这样的 window 我需要做什么?什么 wx 对象?
或者也许有更简单的方法可以用 wx 实现我的目标?
谢谢。
您只需创建一个 wx.Panel
对象和一个方向设置为 wx.VERTICAL
的 wx.BoxSizer
即可。
然后为第一个顶级小部件添加一个 wx.ListCtrl
。父级将是面板,但您会将其添加到 sizer 对象。我实际上更喜欢使用 ObjectListView
而不是 wx.ListCtrl
,但它是 wxPython 的一个单独的附加组件。底部小部件可能是第二个 wx.ListCtrl
或者 wx.ListBox
当您创建第二个小部件时,只需调用它的 Hide()
方法,这样一开始它就不会显示。或者您可以仅在选择第一个小部件中的项目时创建第二个小部件。如果您创建它并隐藏第二个小部件,那么您将使用项目选择事件来显示它。