PySimpleGUI logo**PySimpleGUI** on avatud lähtekoodiga Pythoni graafilise kasutajaliidese (ingl. *graphical user interface* ehk GUI) teek, mis võimaldab kasutajatel kiiresti ja lihtsalt luua GUI rakendusi. PySimpleGUI eesmärk on hõlbustada GUI-de loomist Pythonis, ilma et oleks vaja õppida keerukaid GUI-teeke nagu Qt, wxPython või tkinter. PySimpleGUI-s on lihtne luua erinevaid graafilisi elemente: nupud, tekstikastid, valikunupud, kastid ja palju muud. Koodi kirjutamine on lihtne ja intuitiivne ning võimaldab programmeerijatel luua kiiresti ja tõhusalt erinevaid GUI rakendusi. PySimpleGUI pakub ka erinevaid funktsioone ja võimalusi: mitmerealine tekst, graafikud, taustapildid, kaardiplotterid ja palju muud.

Platvormid
----------

PySimpleGUI toetab erinevaid operatsioonisüsteeme, sealhulgas Windows, macOS, Linux ja Raspberry Pi. See tähendab, et PySimpleGUI koodi saab kirjutada ükskõik millisele platvormile ja seda saab käivitada teistel platvormidel ilma, et oleks vaja koodi uuesti kirjutada. 

#### PySimpleGUIWeb

PySimpleGUIWeb on eksperimentaalne projekt, mis püüab pakkuda PySimpleGUI Pythoni graafilise kasutajaliidese raamistiku veebipõhist versiooni. Projekti eesmärk on võimaldada arendajatel luua veebipõhiseid graafilisi kasutajaliideseid, kasutades sarnast süntaksit nagu PySimpleGUI.

Installeerimine
---------------

PySimpleGUI saab installeerida kirjutades terminali: 

```
pip install pysimplegui
or
pip3 install pysimplegui

```
Näide teegi võimalustest:

```
import PySimpleGUI as sg

sg.theme('DarkAmber')   # Vali kasti värv
# Kõik vajalik aknas toimuv
layout = [  [sg.Text('Some text on Row 1')],
            [sg.Text('Enter something on Row 2'), sg.InputText()],
            [sg.Button('Ok'), sg.Button('Cancel')] ]

# Loo aken
window = sg.Window('Window Title', layout)
# Tsükliga kontrollib sisendit ja nupuvajutust ning kui kasutaja on rakenduse kinni pannud
while True:
    event, values = window.read()
    if event == sg.WIN\_CLOSED or event == 'Cancel': # if user closes window or clicks cancel
        break
    print('You entered ', values[0])

window.close()

```

| Peamised funktsioonid |
| --- |
| **sg.Window** | funktsioon loob uue akna, kus saab lisada erinevaid graafilisi elemente |
| **sg.Text** | funktsioon lisab teksti graafilise elemendina. |
| **sg.Input** | funktsioon lisab tekstivälja, kus kasutaja saab sisestada teksti. |
| **sg.Button** | funktsioon lisab nupu, mida kasutaja saab klõpsata. |
| **sg.Checkbox** | funktsioon lisab valikukasti, mida kasutaja saab märkida või tühistada. |
| **sg.Radio** | funktsioon lisab valikunuppe, mida kasutaja saab valida. |
| **sg.Listbox** | funktsioon lisab loendi, millest kasutaja saab valida. |
| **sg.Image** | funktsioon lisab pildi graafilise elemendina. |
| **sg.Multiline** | funktsioon lisab mitme realise tekstivälja. |
| **sg.ProgressBar** | funktsioon lisab edenemisriba, mida saab kasutada näiteks protsessi edenemise kuvamiseks. |

Viited
======

1. ↑  Tõnisson, Eno; Palts, Tauno; Tõnisson, Kaarel; Meier, Heidi; Säde, Merilin; Luberg, Ago; Lorenz, Birgy; Kivisalu, Einar; Antoi, Meelis; Krusberg, Säde Mai. "PySimpleGUI ja esimene näide". `{{ajakirjaviide}}`: viitemall journal nõuab parameetrit `|journal=` (juhend)
2. 1 2  "Readme - PySimpleGUI". *www.pysimplegui.org*. Vaadatud 20. veebruaril 2023.
3. ↑  "PySimpleGUI". *www.pysimplegui.org*. Vaadatud 6. märtsil 2023.
4. ↑  PySimpleGUI, *PySimpleGUIWeb: A port of PySimpleGUI that runs in a web browser. Utilizes Remi as the GUI framework*, vaadatud 6. märtsil 2023

Lingid
------