0

wxPython で ObjectListView を作成しましたが、何もクリックできないようです (スクロールバー、並べ替えなど):

self.requests_view = ObjectListView(parent=self.panel.pages["server"],
                                    id=wx.ID_ANY, style=wx.LC_REPORT|wx.SUNKEN_BORDER)
self.requests_view.SetColumns([a bunch of column definitions])
self.requests_view.EnableSorting()
self.h_sizers["server"][1].AddStretchSpacer(prop=1)
self.h_sizers["server"][1].Add(self.requests_view, proportion=1, flag=wx.EXPAND)
self.h_sizers["server"][1].AddStretchSpacer(prop=1)

すべてのスレッドコードをマルチプロセッシングに変更して、対話を妨げているのがスリープ間隔ではないことを確認しました。ツールバーのタブは問題なくクリックできます。このウィジェットを「クリック可能」にするにはどうすればよいですか?

私が試したこと:

  • スリープ カウントが GUI をロックアウトしないように、すべてのスレッド コードをマルチプロセッシング コードに変更しました。
  • クリックをロックアウトする場合に備えて、すべての wx.Timers をより長い間隔に拡張しようとしました
  • クリック イベント バインド (なし)、すべてのスリープ (なし) をチェック
  • 親子関係をいじってみたけど、こうあるべき
  • 一般的な wxpython の問題と、特に objectlistview の問題を Google で検索しました。また、クリックを有効にする可能性のある設定について、objectlistview のソース コードを精査しました。
  • 編集: ウィジェットが gui によって拡張されていて、クリック領域が拡張されていない場合に備えて、ウィジェットに絶対サイズを与えました。
4

0 に答える 0