Adding a GUI “Front End” to Any Command Line Program with PySimpleGUI 2020 – Part 2

Posted by


In this tutorial, we will continue exploring PySimpleGUI 2020 by discussing how to add a GUI "Front End" to any command line program. By doing so, you can enhance the user experience of your command line application and make it more user-friendly.

To get started, make sure you have PySimpleGUI 2020 installed. If not, you can install it using pip:

pip install PySimpleGUI

Now, let’s dive into the steps to add a GUI front end to a command line program:

Step 1: Import PySimpleGUI

The first step is to import the necessary modules from PySimpleGUI. In your Python script, add the following line:

import PySimpleGUI as sg

Step 2: Define the layout of your GUI

Next, you need to define the layout of your GUI. This will include specifying the different elements such as buttons, text inputs, labels, etc. that will make up your front end. Here’s an example layout for a simple front end:

layout = [
    [sg.Text('Enter your name:')],
    [sg.InputText(key='-NAME-')],
    [sg.Button('Submit')]
]

Step 3: Create a window and bind the layout to it

After defining the layout, you need to create a new window using the sg.Window class and bind the layout to it. Here’s how you can do that:

window = sg.Window('My Command Line Application', layout)

Step 4: Read events and values from the window

Now, you need to create a loop to read events and values from the window. This will allow your GUI to interact with the user. Here’s an example loop that captures the user’s input and triggers an action when the "Submit" button is clicked:

while True:
    event, values = window.read()

    if event == sg.WIN_CLOSED:
        break
    if event == 'Submit':
        name = values['-NAME-']
        print(f'Hello, {name}!')

Step 5: Close the window

Finally, don’t forget to close the window after the loop is completed:

window.close()

That’s it! You have successfully added a GUI front end to your command line program using PySimpleGUI 2020. Feel free to customize the layout and functionality of your GUI to suit your specific needs.

As you can see, PySimpleGUI makes it easy to create interactive front ends for your command line applications. With just a few lines of code, you can significantly improve the user experience of your program. So go ahead and give it a try!

0 0 votes
Article Rating
6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@retvolki
1 month ago

I've always thought creating a GUI was something complex and demanding. However after watching 1h of your videos I'm already able to create my own simple GUIs! And I'm a complete beginner, not just in GUIs per se but in Python/programming overall.
So you out there reading my comment, if I'm able to do it you surely can as well!! Don't give up!!

@vladbillyk
1 month ago

How do you type those big words?

@royaltyfreebeats6415
1 month ago

ty its so useful!

@gopalkaul843
1 month ago

PySimpleGUI >> any other GUI framework!

@johnstonhawkeye
1 month ago

Thank you for putting these 2020 tutorials together. They are inspiring and informative!

@ajithmurugaian2626
1 month ago

You are amazing!