生成された別の UI に使用する変数、特に最近アクセスした sqlite の ID を渡す方法について 1 時間以上困惑しました。私はeric4を使用しています(python、pyqt、qtdesigner、およびsqliteを使用)。
基本的に、私がコーディングしているプログラムはメンバーを作成し、メンバーの情報が生成されると、各メンバーは一意の ID を持ちます。新しいメンバーが作成されると、新しいメンバーに割り当てられた ID をプログラムの別の部分に渡す必要があります。ただし、メンバーに変更を加える必要がある場合もあります。メンバーの正しい情報を表示するには、ID を知っている必要があります。
基本的には、新規会員を追加する場合、まずデータベースに情報を入力します。私がしたことは、newmember.py という名前のその UI のダイアログ コードで次のようになります。
def on_button_Save_released(self):
Nik = unicode(self.LineEdit_Nickname.text())
self.NMem = NewMem()
self.NMem.input_data(Nik)
self.close()
NewMem
データベースにアクセスできる別のpyファイルのクラスです。input_data メソッドの一部は次のようになります。
cur.execute("insert into Members (Nick) values (?)",(Nik))
このコードを追加して、新しいメンバーに割り当てられた ID を認識できるようにしました::
CurrentID = cur.lastrowid
return CurrentID
そこでself.NMem.input_data(Nik)
、UIダイアログコード newmember.py のこの行をこれに変更しました
ID = self.NMem.input_data(Nik)
IDが渡されるように。
これで、ダイアログ コードは別のウィンドウを開き、返された ID を別の UI に使用したいと考えています。基本的に、newmember.py の UI ダイアログ コードのメソッド全体は、これまでのところ次のようになっています。
def on_button_Save_released(self):
Nik = unicode(self.LineEdit_Nickname.text())
self.NMem = NewMem()
ID = self.NMem.input_data(Nik)
self.close()
self.Pts = Points()
self.Pts.show()
これは、メンバーの情報を UI にPoints()
表示する別の UI ダイアログ コードのクラスです。ただし、正しい情報が表示されるようにPoints
、返さID
れた情報を UI に渡す必要があります。Points()
表示されることを認識できるように、コンパイルされた ui フォームの一部を変更する必要があるという予感がありますが、コンパイルされた ui フォームでそれID
を渡すにはどうすればよいですか?
どんな助けでも大歓迎です深くお辞儀をします
編集:このコードに方法はありますか -
self.Pts = Points()
self.Pts.show()
変数 ID も組み込まれ、UI に渡されますか? お気に入り
self.Pts = Points
self.Pts.show(ID)
IDもUIに送られますか?
Edit2:ここに示されているように、python で ui のクラスに変数を渡す方法はありますか? http://www.daniweb.com/forums/thread64758.html