wxPython、StaticText() の値を設定する 質問する

wxPython、StaticText() の値を設定する 質問する

現在、wxPython を使用してアプリ用の小さな GUI フロントエンドを作成しています。

wx.StaticText()テキストを保持する場所を作成するために、以下のコードを使用しています。

content = wx.StaticText(panel, -1, "Text Here", style=wx.ALIGN_CENTRE)

StaticText()ボタンをクリックすると MySQL からデータが取得されます。その値を MySQL データに変更したいのですが、他にデータを保持するために使用できるものはありますか。

以下の方法を試してみました:

contents = wx.TextCtrl(bkg, style=wx.TE_MULTILINE | wx.HSCROLL)
content.SetValue("New Text")

データは正常に表示されますが、データが読み込まれた後にデータを編集できるため、これは望ましくありません。

私がやろうとしていることを皆さんが理解してくれることを願っています。私は Python 初心者です :)

乾杯

ベストアンサー1

を使用している場合wx.StaticText()次の操作を実行できます。

def __init__(self, parent, *args, **kwargs): #frame constructor, etc.
    self.some_text = wx.StaticText(panel, wx.ID_ANY, label="Awaiting MySQL Data", style=wx.ALIGN_CENTER)

def someFunction(self):
    mysql_data = databasemodel.returnData() #query your database to return a string
    self.some_text.SetLabel(mysql_data)

litbが述べたように、wxWidgetsのドキュメントは、wxPython ドキュメントSetLabel()関数がwx.StaticTextインスタンスに適用できることを確認するには、wxPythonドキュメントの名前空間階層を上って、wxWindow スーパークラス、wx.StaticText はそこからサブクラス化されています。wxPython には wxWidgets と異なる点がいくつかあり、それが何であるかを見つけるのは難しい場合があります。幸いなことに、多くの場合、違いは wxPython に追加された便利な関数であり、wxWidgets には存在しません。

おすすめ記事