2012-03-18 10 views
1

私は比較的大きなSQLデータベース(250k行)を使用してPythonアプリケーションを作成しています。アプリケーションは、SQLクエリーの結果を提示することが最も重要な部分であるGUIを必要とします。guiにデータを表示する最もシームレスな方法

私はGUIのテーブルにデータをすばやく表示する最善の方法を探しています。

私は主なアプリケーションにシームレスに接続しているので、wxを使用することをお勧めします。そして、私が必要とするのは、SQLクエリとGUIテーブルの間の最小の労力です。 私は一度wx.gridを使用しましたが、機能が限定されているようでした。また、私はwx.grid.pygridtablebaseについて知っています - 違いは何ですか? これを行う最も簡単な方法は何ですか?

+0

「機能が限定されています」 - どのようにですか? –

+0

、つまり、右クリックイベントをカバーしません。実際、それは私の質問です。そうするために適切なクラスがありますか? –

+0

いいえ、[wxGrid](http://docs.wxwidgets.org/2.8/wx_wxgrid.html)は方法です。おそらくあなたのニーズにそれを曲げることができます。右クリックイベントは例外ではありません( 'EVT_GRID_CELL_RIGHT_CLICK'を参照)。 –

答えて

1

wx.gridまたはListCtrlsのいずれかを使用できます。 wxPythonデモには1億個のセルを持つグリッドの例があり、多くの情報を持つプロジェクトの指針として使用できます。 ListCtrlsの場合は、wx.LC_VIRTUALフラグを使用してVirtual ListCtrlを使用します。デモにもその例があります。

+0

この返答をありがとうございます、私はそれが可能であることを知っていますが、wx.sqlのいくつかの拡張がwx.grid.pasteSQL(cur.fetchall())のようなSQLクエリをグリッドに移入するハンドラを持っているのだろうか、 dは列や行数、書式などを自動的に決定しません。 wx.gridに基づいて独自のクラスを作成しましたが、そうする必要はありません。 –

+0

データベースを念頭に置いて構築されたwxPythonのレイヤーであるDaboを使うことができます。 –

関連する問題