私はQuantum GISでPostgresをバックエンドとして、QT Designerを使ってGUIを作成するプラグインを作成しています。私はpsycopg2を使用してデータベース内のスクリプトを実行し、クエリの結果をフェッチしてGUIのラベルの値を設定しています。このものは私のためにうまくいきます。QT Designerを使用してTableViewをPostgresデータベースに作成する
「計算」ボタンをクリックしていくつかのクエリを実行した後で今したいことは、結果のテーブルをプラグインにTableViewとして表示することです。テーブルを見る目的で明示的にウィジェットが存在することは知っていますが、どうやってそれをどうやって行くのかは分かりません。 psycopg2やPySideを使うべきかどうかは分かりません。なぜなら、私がオンラインで見た例のほとんどが後者を使うからです。
誰かがpsycopg2とPySideのどちらを使ってTableViewを作成する必要があるのか誰かが分かりますか?次に、私はPostgresでクエリの結果を表示するために、TableViewウィジェットに何が必要なのか疑問に思っています。最後に、コードを設定する方法について誰かが大いに感謝するでしょう。
乾杯、
ローマ
私は先に行ってとPyQtはドキュメント以下しようとしたが、それはCで提供されますよう++と私は場合、私はよく分からないのPythonを使用した唯一の初心者プログラマだしましたコードの構文に必要なすべての修正が加えられました。とにかく、これは私がこれまで持っているものです:私は計算を実行するために、私のGUIのボタンをクリックしたときに起こる
db = QSqlDatabase.addDatabase("database")
db.setHostName("localhost")
db.setUserName("postgres")
db.setPassword("password")
#Not sure what to do to set the connection. The C++ documentation says to put "bool ok = db.open();"
model = QSqlQueryModel()
model.setQuery("SELECT name, density, deveff FROM public." +str(filename)+ "_rezoning ORDER BY gid;")
model.setHeaderData(0, Qt.Horizontal, "Name")
model.setHeaderData(1, Qt.Horizontal, "Density")
model.setHeaderData(2, Qt.Horizontal, "DevEff")
view = QTableView()
view.setModel(model)
view.show()
何を、小さな空白QGISウィンドウが簡単に点滅し、消えます。少なくとも私はエラーは出ていないが、明らかに完全ではない。問題の一部は、欠落しているデータベースへの接続と、設定方法がわからないことです。もう1つの問題は、GUIのtableViewウィジェットでこれを表示したいのですが、これを指定する方法がわかりません...
これ以上のヒントはありますか?ほんとうにありがとう。
ローマ
大変ありがとうございます。私にはまったく新しいものなので、この文書を読むことにします。再度、感謝します! –
うれしい私はあなたを助けることができます。どういたしまして。 – dschulz