Pysimplegui: [エンハンスメント/バグ/質問]私の問題は...

作成日 2020年06月21日  ·  4コメント  ·  ソース: PySimpleGUI/PySimpleGUI

問題の種類(拡張、エラー、バグ、質問)

質問/強化

オペレーティング・システム

Win10、Raspian

Pythonバージョン

3.7

PySimpleGUIのポートとバージョン

tkinterポート、4.20.0


4.20.0 2020年6月6日リリース

月または年でのあなたの経験レベル

1年_________Pythonプログラミングの経験
45年_________プログラミング経験全体
yes_________以前に別のPythonGUIフレームワーク(tkinter、Qtなど)を使用したことがありますか(yes / noで問題ありません)?

次の手順を完了しました。

  • [x]問題を提出する方法の説明を読む
  • [x]メインドキュメントhttp://www.PySimpleGUI.orgで問題を検索しました
  • [x] PySimpleGUI(Qt、WX、Remi)でない場合は、readmeで特定のポートを検索しました
  • [x]あなたの目標に類似したデモプログラムを探しましたhttp://www.PySimpleGUI.com
  • [x] GitHubの各ポートの下にもデモプログラムがあることに注意してください
  • [x]デバッガーの外部で(コマンドラインから)プログラムを実行します
  • [x]問題(オープンおよびクローズ)を検索して、すでに報告されているかどうかを確認します
  • [] x PySimpleGUI.pyファイルをアップグレードして、GitHub上の現在のファイルを使用するようにして再試行してください。 問題はすでに修正されている可能性がありますが、まだPyPIにはありません。

問題の説明/質問/詳細

私のアプリは、要素がリアルタイムで更新されるラズベリーのGUI用です(非同期ウィンドウ)
UPS2-GUI
。 正常に動作していますが、pysimpleguiのいくつかの追加機能は素晴らしいでしょう:
質問1 :window ['xxkey']。update()によって更新可能なテキスト要素属性のリストを提供してください。

質問2 :いくつかの例に表示されるwindow [f'xxkey ']の_f_の目的は何ですか

拡張機能:動的更新にとって重要なのは、たとえばテキストの「border_width」です。

実例:
window ['K_BATT_STATE']。update( 'LOW')
window [f'K_BATT_V ']。update(background_color =' green ')

動作しない例:
window [f'K_BATT_V ']。update(border_width = 2)

最も参考になるコメント

私が知っているように

  • Update(value = None、background_color = None、text_color = None、font = None、visible = None)に表示されるテキスト要素属性のオプション。
  • window [f '...]を使用する唯一のデモ例はDemo_Column_Elem_Swap_Entire_Window.pyです。 変数による部分文字列の置換に使用されるf文字列。

あなたのための1つのサンプル。

import PySimpleGUI as sg

layout = [[sg.Text('Hello World !', font=('Courier New',20), key='TEXT1')],
          [sg.Text('dlroW olleH !', font=('Courier New',20), key='TEXT2')]]
window = sg.Window('Text', layout, finalize=True)
window['TEXT1'].Widget.configure(borderwidth=5, relief='solid')

while True:

    event, values = window.read()
    if event == sg.WINDOW_CLOSED:
        break

window.close()

全てのコメント4件

ドキュメントと組み込みのドキュメント文字列は、各要素の更新メソッドで利用できるものを正確に示しています。 詳細なコールリファレンスをご覧ください。
http://calls.PySimpleGUI.org
何かがそこにない場合は、いくつかの選択肢があります。 基になるウィジェットを直接操作するか、拡張リクエストを開くことができます。

私が知っているように

  • Update(value = None、background_color = None、text_color = None、font = None、visible = None)に表示されるテキスト要素属性のオプション。
  • window [f '...]を使用する唯一のデモ例はDemo_Column_Elem_Swap_Entire_Window.pyです。 変数による部分文字列の置換に使用されるf文字列。

あなたのための1つのサンプル。

import PySimpleGUI as sg

layout = [[sg.Text('Hello World !', font=('Courier New',20), key='TEXT1')],
          [sg.Text('dlroW olleH !', font=('Courier New',20), key='TEXT2')]]
window = sg.Window('Text', layout, finalize=True)
window['TEXT1'].Widget.configure(borderwidth=5, relief='solid')

while True:

    event, values = window.read()
    if event == sg.WINDOW_CLOSED:
        break

window.close()

ジェイソン、どうもありがとう!

基盤となる「ウィジェット」の機能がPySimpleGUIAPIを介して公開されていない場合は、 .Widgetメンバー変数を使用して、基盤となるGUIフレームワークのウィジェットに直接アクセスできます。 あるフレームワークから別のフレームワークへの移植性が失われますが、これらの場合、通常は問題になりません。

大丈夫な解決策が得られてうれしいです。

こんにちはジェイソン、こんにちはマイク
どうもありがとう! 両方の答えは私の苦しみを数分以内に終わらせるのに役立ちます:-)。
Pysimpleguiは信じられないほどのサポートを備えた素晴らしい製品です!
プロジェクトが使用可能になり次第、gitアカウントで公開します。 これは、すべてのラズベリーモデル3 ++およびpizeroに対応する、中断のない高効率の電源であり、完全なハードウェアおよびソフトウェア設計が含まれています。

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

eyeonus picture eyeonus  ·  6コメント

MikeTheWatchGuy picture MikeTheWatchGuy  ·  6コメント

ihouses picture ihouses  ·  6コメント

MikeTheWatchGuy picture MikeTheWatchGuy  ·  3コメント

flowerbug picture flowerbug  ·  4コメント