Pysimplegui: [рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ/рдмрдЧ/рдкреНрд░рд╢реНрди] рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рд╣реИ...

рдХреЛ рдирд┐рд░реНрдорд┐рдд 21 рдЬреВрди 2020  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: PySimpleGUI/PySimpleGUI

рдореБрджреНрджреЛрдВ рдХрд╛ рдкреНрд░рдХрд╛рд░ (рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ, рддреНрд░реБрдЯрд┐, рдмрдЧ, рдкреНрд░рд╢реНрди)

рдкреНрд░рд╢реНрди / рд╕рдВрд╡рд░реНрджреНрдзрди

рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо

рд╡рд┐рди10, рд░рд╛рд╕реНрдкрд┐рдпрди

рдкрд╛рдпрдерди рд╕рдВрд╕реНрдХрд░рдг

3.7

PySimpleGUI рдкреЛрд░реНрдЯ рдФрд░ рд╕рдВрд╕реНрдХрд░рдг

рдЯрд┐рдВрдХрд░ рдкреЛрд░реНрдЯ, 4.20.0


4.20.0 рд╡рд┐рдореЛрдЪрди 6-рдЬреВрди-2020

рдорд╣реАрдиреЛрдВ рдпрд╛ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдЖрдкрдХрд╛ рдЕрдиреБрднрд╡ рд╕реНрддрд░

1 рд╡рд░реНрд╖_________ рдкрд╛рдпрдерди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЕрдиреБрднрд╡
45 рд╡рд░реНрд╖_________ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЕрдиреБрднрд╡ рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░
рд╣рд╛рдБ _________ рдиреЗ рдкрд╣рд▓реЗ рдПрдХ рдФрд░ рдкрд╛рдпрдерди рдЬреАрдпреВрдЖрдИ рдлреНрд░реЗрдорд╡рд░реНрдХ (рдЯрд┐рдВрдХрд░, рдХреНрдпреВрдЯреА, рдЖрджрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ (рд╣рд╛рдБ/рдирд╣реАрдВ рдареАрдХ рд╣реИ)?

рдЖрдкрдиреЗ рдпреЗ рдЪрд░рдг рдкреВрд░реЗ рдХрд░ рд▓рд┐рдП рд╣реИрдВ:

  • [ x] рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд░реНрджреЗрд╢ рдкрдврд╝реЗрдВ
  • [ x] рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдбреЙрдХреНрд╕ http://www.PySimpleGUI.org рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬрд╛ рдЧрдпрд╛
  • [ x] рдЖрдкрдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рд░реАрдбрдореА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬрд╛ рдЧрдпрд╛ рдпрджрд┐ PySimpleGUI (Qt, WX, Remi) рдирд╣реАрдВ рд╣реИ
  • [ x] рдРрд╕реЗ рдбреЗрдореЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рддрд▓рд╛рд╢ рдХреА рдЬреЛ рдЖрдкрдХреЗ рд▓рдХреНрд╖реНрдп рдХреЗ рд╕рдорд╛рди рд╣реЛрдВ http://www.PySimpleGUI.com
  • [ x] рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ GitHub рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреЛрд░реНрдЯ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдбреЗрдореЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рднреА рд╣реИрдВ
  • [ x] рдЕрдкрдиреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЕрдкрдиреЗ рдбреАрдмрдЧрд░ рдХреЗ рдмрд╛рд╣рд░ рдЪрд▓рд╛рдПрдВ (рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ)
  • [ x] рдореБрджреНрджреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬрд╛ рдЧрдпрд╛ (рдЦреБрд▓рд╛ рдФрд░ рдмрдВрдж) рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
  • [ ]x GitHub рдкрд░ рд╡рд░реНрддрдорд╛рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА PySimpleGUI.py рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдХреЗ рдкреБрди: рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдкрд╣рд▓реЗ рд╣реА рдареАрдХ рд╣реЛ рдЧрдИ рд╣реЛ рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ PyPI рдкрд░ рдирд╣реАрдВ рд╣реИред

рд╕рдорд╕реНрдпрд╛ / рдкреНрд░рд╢реНрди / рд╡рд┐рд╡рд░рдг рдХрд╛ рд╡рд┐рд╡рд░рдг

рдореЗрд░рд╛ рдРрдк рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд░ рдПрдХ рдЬреАрдпреВрдЖрдИ рдХреЗ рд▓рд┐рдП рд╣реИ (рдПрд╕рд┐рдВрдХ рд╡рд┐рдВрдбреЛ)
UPS2-GUI
. рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди pysimplegui рдореЗрдВ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рд╣реЛрдВрдЧреА:
рдкреНрд░рд╢реНрди 1 : рдХреГрдкрдпрд╛ рдЯреЗрдХреНрд╕реНрдЯ рдПрд▓реАрдореЗрдВрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реВрдЪреА рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдЬреЛ рд╡рд┐рдВрдбреЛ рджреНрд╡рд╛рд░рд╛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВ ['xxkey']. рдЕрджреНрдпрддрди ()ред

рдкреНрд░рд╢реНрди 2 : рд╡рд┐рдВрдбреЛ рдореЗрдВ _f_ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдХреНрдпрд╛ рд╣реИ [f'xxkey'] рдЖрдкрдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИ

рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ рдкреЛрд░рдкреЛрд╕рд▓ : рдбрд╛рдпрдирд╛рдорд┐рдХ рдЕрдкрдбреЗрдЯ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдЬреИрд╕реЗ рдЯреЗрдХреНрд╕реНрдЯ рдкрд░ 'рдмреЙрд░реНрдбрд░_рд╡рд┐рдбреНрде'ред

рдХрд╛рд░реНрдп рдЙрджрд╛рд╣рд░рдг:
рд╡рд┐рдВрдбреЛ ['K_BATT_STATE']ред рдЕрдкрдбреЗрдЯ ('LOW')
рд╡рд┐рдВрдбреЛ [f'K_BATT_V']ред рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ (рдкреГрд╖реНрдарднреВрдорд┐_рд░рдВрдЧ = 'рд╣рд░рд╛')

рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рдЙрджрд╛рд╣рд░рдг:
рд╡рд┐рдВрдбреЛ [f'K_BATT_V']ред рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ (рд╕реАрдорд╛_рдЪреМрдбрд╝рд╛рдИ = 2)

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЬрд╛рдирддрд╛ рдерд╛

  • рдЕрджреНрдпрддрди рдореЗрдВ рджрд┐рдЦрд╛рдП рдЧрдП рдЯреЗрдХреНрд╕реНрдЯ рддрддреНрд╡ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╡рд┐рдХрд▓реНрдк (рдорд╛рди = рдХреЛрдИ рдирд╣реАрдВ, рдкреГрд╖реНрдарднреВрдорд┐_рд░рдВрдЧ = рдХреЛрдИ рдирд╣реАрдВ, рдЯреЗрдХреНрд╕реНрдЯ_рд░рдВрдЧ = рдХреЛрдИ рдирд╣реАрдВ, рдлрд╝реЙрдиреНрдЯ = рдХреЛрдИ рдирд╣реАрдВ, рджреГрд╢реНрдпрдорд╛рди = рдХреЛрдИ рдирд╣реАрдВ)ред
  • рдХреЗрд╡рд▓ рдПрдХ рдбреЗрдореЛ рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреЛрдЧ window[f'...] рд╣реИ Demo_Column_Elem_Swap_Entire_Window.py ред рдПрдл-рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЪрд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдирдореВрдирд╛ред

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
рдЕрдЧрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреБрдЫ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред рдЖрдк рд╕реАрдзреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЬрд╛рдирддрд╛ рдерд╛

  • рдЕрджреНрдпрддрди рдореЗрдВ рджрд┐рдЦрд╛рдП рдЧрдП рдЯреЗрдХреНрд╕реНрдЯ рддрддреНрд╡ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╡рд┐рдХрд▓реНрдк (рдорд╛рди = рдХреЛрдИ рдирд╣реАрдВ, рдкреГрд╖реНрдарднреВрдорд┐_рд░рдВрдЧ = рдХреЛрдИ рдирд╣реАрдВ, рдЯреЗрдХреНрд╕реНрдЯ_рд░рдВрдЧ = рдХреЛрдИ рдирд╣реАрдВ, рдлрд╝реЙрдиреНрдЯ = рдХреЛрдИ рдирд╣реАрдВ, рджреГрд╢реНрдпрдорд╛рди = рдХреЛрдИ рдирд╣реАрдВ)ред
  • рдХреЗрд╡рд▓ рдПрдХ рдбреЗрдореЛ рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреЛрдЧ window[f'...] рд╣реИ Demo_Column_Elem_Swap_Entire_Window.py ред рдПрдл-рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЪрд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдирдореВрдирд╛ред

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()

рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж рдЬреЗрд╕рди!

рдЬрдм рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд "рд╡рд┐рдЬреЗрдЯ" рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ PySimpleGUI рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдЬрд╛рдЧрд░ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рддреЛ рдЖрдк рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЬреАрдпреВрдЖрдИ рдврд╛рдВрдЪреЗ рдХреЗ рд╡рд┐рдЬреЗрдЯ рддрдХ рд╕реАрдзреЗ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП .Widget рд╕рджрд╕реНрдп рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдПрдХ рдврд╛рдВрдЪреЗ рд╕реЗ рджреВрд╕рд░реЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдорддреМрд░ рдкрд░ рдЗрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

рдЦреБрд╢реА рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдареАрдХ рд╣реИрдВред

рд╣рд╛рдп рдЬреЗрд╕рди, рд╣рд╛рдп рдорд╛рдЗрдХ
рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рджреЛрдиреЛрдВ рдЙрддреНрддрд░ рд╕рд╣рд╛рдпрдХ рд╣реИрдВ рдореЗрд░реА рдкреАрдбрд╝рд╛ рд╕рдорд╛рдкреНрдд :-) рдорд┐рдирдЯреЛрдВ рдХреЗ рднреАрддрд░ред
Pysimplegui рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдПрдХ рдмреЗрд╣рддрд░реАрди рдЙрддреНрдкрд╛рдж рд╣реИ!
рдЬреИрд╕реЗ рд╣реА рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реЛрдЧреА, рдореИрдВ рдЗрд╕реЗ рдЕрдкрдиреЗ рдЧрд┐рдЯ рдЦрд╛рддреЗ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реВрдВрдЧрд╛ред рдпрд╣ рд╕рднреА рд░рд╛рд╕реНрдкрдмреЗрд░реА рдореЙрдбрд▓ 3++ рдФрд░ рдкреАрдЖрдИ рд╢реВрдиреНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░реНрдмрд╛рдз рдФрд░ рдЙрдЪреНрдЪ рджрдХреНрд╖рддрд╛ рдмрд┐рдЬрд▓реА рдЖрдкреВрд░реНрддрд┐ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рдкреВрд░реНрдг рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рд╢рд╛рдорд┐рд▓ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

flowerbug picture flowerbug  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ncotrb picture ncotrb  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MikeTheWatchGuy picture MikeTheWatchGuy  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

MikeTheWatchGuy picture MikeTheWatchGuy  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

LBdN picture LBdN  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ