In this tutorial, we will learn how to replace a button with an image in PySimpleGUI using the PySimpleGUI Cookbook example #09 "Trocando botão por imagem .png".
Step 1: Install PySimpleGUI
If you haven’t already installed PySimpleGUI, you can do so by running the following command in your command line:
pip install PySimpleGUI
Step 2: Create a Python script
Create a new Python script and import PySimpleGUI by adding the following line at the top of your script:
import PySimpleGUI as sg
Step 3: Define the layout
Next, define the layout of your GUI. In this example, we will be replacing a button with an image. We can use the sg.Image
element to display an image. Here’s an example layout that includes an image element:
layout = [
[sg.Image(r'pathtoimage.png')],
[sg.Button('Submit')]
]
In this layout, we have added an image element with the path to the image file ‘pathtoimage.png’. You can replace this with the path to your own image file.
Step 4: Create the window
Create a PySimpleGUI window using the layout defined above:
window = sg.Window('Image Example', layout)
Step 5: Event loop
Next, create a loop to handle events:
while True:
event, values = window.read()
if event == sg.WIN_CLOSED or event == 'Submit':
break
This loop will run until the window is closed or the ‘Submit’ button is clicked.
Step 6: Run the application
Finally, run the application by adding the following code at the end of your script:
window.close()
Run your script, and you should see a window with an image displayed instead of a button.
That’s it! You have successfully replaced a button with an image using PySimpleGUI. Feel free to customize this example further or explore other PySimpleGUI Cookbook examples to learn more about creating graphical user interfaces in Python.
parceiro que videos bons mano!! de otima qualidade sua didatica, parabens. inscrito certokkkkk Cotinue com o trampo vai na fé. ………………………………………………esperando a aula da imagem de fundo e botoes por cima
top
É possÃvel fazer o mesmo com um FolderBrowse ?
Você explica muito bem man! continua gravando que tá em ajudando bastante
Acompanhando sempre as aulas; Tentando replicar esse programa, não reconhece o import buttons, mesmo depois de instalar. Estou usando o Linux Mint, alguma dica?
Parabéns meu brother muito bom, véi tem como se fazer uma vÃdeo aula só com select / listbox e seleção na listbox? Assisti uma playlist sua de pysimplegui + sqlite3 achei uma beleza só a parte da listbox que me deixou um tanto perdido.
Forte abraço e sucesso.
Acabaram as aulas do cookbook?
Gostei da aula….ensina a colocar a função de maximizar a janela, eu tentei e nao consigo fazer
Boa noite, man! Cara, tenho aprendido muito com seus videos. Muito obrigado!
Gostaria de uma ajuda.
Estou treinando neste código:
categoria = ['Celular', 'Bateria', 'Carregador']
marca = ['Iphone', 'Motorola', 'LG']
cor = ['Branco', 'Verde', 'Preto']
fonte = 20
layout = [[sg.Text('Código', font=fonte), sg.Input(key='-COD-', font=fonte, size=(20, 1))],
[sg.Text('Unidade', font=fonte), sg.InputText(key='-UNID-', font=fonte, size=(10, 1))],
[sg.Text('Nome', font=fonte), sg.Input(key='-NOME-', size=(30, 1))],
[sg.Text('Categoria', font=fonte), sg.Combo(categoria, font=fonte, key='-CATEG-', size=(30, 1))],
[sg.Text('Marca', font=fonte), sg.Combo(marca, font=fonte, key='-MARCA-')],
[sg.Text('Cor/Estampa', font=fonte), sg.Combo(cor, font=fonte, key='-COR-')],
[sg.Text('')],
[sg.Button('Cadastrar', font=fonte), sg.Button('Cancelar', font=fonte)]]
window = sg.Window('CADASTRO DE PRODUTOS', layout, size=(700, 300))
while True:
event, values = window.read()
if event in (sg.WIN_CLOSED, 'Cancelar'):
break
if event == 'Cadastrar':
window['-NOME-'].update(window['-CATEG-'])
print(window['-COR-'])
window.close()
Gostaria que o valor escolhido no Combo cuja key='-CATEG-' fosse preenchido na key= '-NOME-'. Mas está aparecendo o seguinte: <PySimpleGUI.PySimpleGUI.Combo object at 0x7fd8bf982a60>.
Além disso, é uma boa prática criar variáveis para definir alguns parâmetros, conforme fiz no caso da fonte?
Muito bom, mano. Me salvou aqui!
Muito bom mano, traz videos manipulando arquivos com essa lib
Força ai mano, continue fazendo videos de PySimpleGui tem muito pouco no youtube e se você fizer será um dos primeiros no mundo fazendo video de qualidade. Obrigado🖒
Grava mais viu , pois vc grava muito bem mais tem o jeito para a coisa , já ansiosa para os seu próximos vÃdeos 🥰 tb sou YouTuber te desejo muito sucesso