非常に簡単で使いやすいPythonパターンインターフェースライブラリ(PysimpleGUI)


この間、友達のためにソースコードの監視プログラムを作成していますが、Pythonの分野でとても簡単で使いやすいグラフィックインターフェースライブラリを見つけました。
グラフィカル・インターフェースライブラリといえば、TkInter、PyQt、PyGUIなどのポップ・グラフィック・インターフェースライブラリを思い出すかもしれませんが、私も試してみました。ネットで検索して、デモがあるかどうか見てみて、改変してみました。結果はめったにありませんでした。その時はこれらのグラフバンクの勉強を放棄して、かわりにvue+flashkの形式を使ってブラウザのウェブページをプログラムのインタフェースにしました。
友達が聞いたかもしれません。グラフィックインターフェースを必ず勉強しますか?
必ずしもそうではないです。もしあなたが書いたプログラムは全部自分で使うか、あるいは他のプログラマと協力して使うなら、直接コマンドラインで呼び出すだけでいいです。グラフィックスインターフェースを全く勉強しなくてもいいですか?いつ勉強しますか?ゲームをするか、他の人(技術者ではない)のためにソフトツールを作るか、グラフィックス・インターフェースを学ぶ必要があります。後者です。たまには他の人のために小道具を書いてくださいと誘われますので、グラフィックインターフェース体験がたくさんできます。
今日言いたいのですが、このライブラリはPySimpleGUIです。GitHub倉庫には5.1 Kのstarがあります。20日前にコードを提出する人がいます。とても熱いと言えます。
公式文書を見て、デモを探しましたが、2時間かかりました。コードを56行書いたら、グラフィカルなインターフェースを持つ監視ツールができました。
PysimpleGUIが一番魅力的なところは200以上のサンプルプログラムがあります。日常の開発ニーズをほぼカバーしています。ちょっと修正すれば使えます。本当に便利です。
PysimpleGUI内部には、tkinter、Qt、wxPythoon、Remiがブラウザのサポートに使用されていますので、コードを変更せずにブラウザに転送しやすいです。次の図のように

また、最も魅力的なポイントは、十分に簡単です。数分間でいくつかのコードを使ってカスタムGUIレイアウトを構築することができます。初心者にとっては十分に簡単で、高級ユーザーにとっては十分に強いです。幅広い文書。100種類以上のカラーテーマが内蔵されています。200以上のプログラム[2]も常に更新されています。Raspberry Piを遊んだら、このライブラリでインターフェースを書いてもいいです。よく使えます。
通常のPySimpleGUIプログラムは5つの部分を含んでいます。以下のコードのコメントを参照してください。

import PySimpleGUI as sg            # Part 1 -    
 
#        
layout = [ [sg.Text("What's your name?")],   # Part 2 -   
      [sg.Input()],
      [sg.Button('Ok')] ]
 
#     
window = sg.Window('Window Title', layout)   # Part 3 -     
                        
# Display and interact with the Window
event, values = window.read()          # Part 4 -       window.read()
 
# Do something with the information gathered
print('Hello', values[0], "! Thanks for trying PySimpleGUI")
 
# Finish up by removing from the screen
window.close() # Part 5 -     
上記のコードを実行すると、下図のようなプログラムが得られます。

これはハローワールドのようなプログラムにすぎず、PySimpleGUIはさらに強力なグラフィックインターフェースとゲームインターフェースを作ることができます。
複数のウィンドウ
多くの新しいプログラマがもがいているのを見ましたが、彼らが選んだGUIツールバッグの中で複数のウィンドウを開けてください。幸い、PySimpleGUIはこの操作をどのように実行するかを明確に示しています。実際、彼らはこのようなことをするために2つの異なる「デザインモデル」があります。
簡単にするために、二つの活動ウィンドウをどうやって実行するかを示すだけです。

# -*- coding: utf-8 -*-
# https://www.jianshu.com/u/69f40328d4f0
# https://github.com/china-testing/python-api-tesing
# https://china-testing.github.io/
# support q group: 630011153 144081101
import PySimpleGUI as sg
 
# Create some widgets
ok_btn = sg.Button('Open Second Window')
cancel_btn = sg.Button('Cancel')
layout = [[ok_btn, cancel_btn]]
 
# Create the first Window
window = sg.Window('Window 1', layout)
 
win2_active = False
 
# Create the event loop
while True:
  event1, values1 = window.read(timeout=100)
 
  if event1 in (None, 'Cancel'):
    # User closed the Window or hit the Cancel button
    break
 
  if not win2_active and event1 == 'Open Second Window':
    win2_active = True
    layout2 = [[sg.Text('Window 2')],
          [sg.Button('Exit')]]
 
    window2 = sg.Window('Window 2', layout2)
 
  if win2_active:
    events2, values2 = window2.Read(timeout=100)
    if events2 is None or events2 == 'Exit':
      win2_active = False
      window2.close()
 
window.close()
参考資料
[1]GitHub倉庫:https://github.com/PySimpleGUI/PySimpleGUI
[2]200以上の例示プログラム:https://github.com/PySimpleGUI/PySimpleGUI/tree/master/DemoPrograms
ここでは、非常に簡単で使いやすいPythonグラフィックスインターフェースライブラリに関する記事を紹介します。Pythonグラフィックスインターフェースの内容については、以前の文章を検索したり、下記の関連記事を見たりしてください。これからもよろしくお願いします。