Pitão

Como usar o PyQt QPushButton

Como usar o PyQt QPushButton
Os botões são usados ​​em aplicativos GUI para realizar várias operações com base nos eventos gerados pelo usuário. O QPushButton classe de PyQt é usada em Python para criar botões exigidos pelo aplicativo. Esta classe herda as principais funcionalidades do QAbstractButton aula. Texto ou ícones podem ser usados ​​para legendar o botão. Os botões podem ser ativados usando um mouse e teclado. Qualquer evento de botão, incluindo o botão que está sendo clicado ou clicado duas vezes, pode ser associado a uma função ou método para lidar com o evento. Este tutorial mostra como criar vários tipos de botões usando o QPushButton classe de PyQt em Python.

Métodos QPushButton

O QPushButton classe tem muitos métodos para realizar várias tarefas relacionadas a botões. Alguns dos métodos mais comumente usados ​​desta classe são mencionados abaixo:

Nome do Método Objetivo
texto() Usado para ler a legenda do botão.
setText () Usado para definir o texto na legenda do botão.
setIcon () Usado para definir um ícone na legenda do botão.
conjunto padrão() Usado para definir o botão padrão.
setEnabled () Usado para habilitar ou desabilitar botões. Um valor de Verdadeiro é usado para habilitar o botão, e um valor de Falso é usado para desativar o botão.
setCheckable () Usado para identificar se o botão foi pressionado ou liberado.
está checado() Usado para ler o estado do botão que é um valor booleano.
alternancia() Usado para alternar entre estados. Se o valor atual do estado do botão for Verdadeiro, então o valor mudará para Falso, e vice versa.

Uso de QPushButton

As seções a seguir fornecem vários exemplos simples para explicar o uso de QPushButton.

Exemplo 1: Criar um botão de ação simples

O seguinte script é usado para criar um único botão na janela. O script irá anexar uma função personalizada com o evento clicado do botão para verificar se o botão foi clicado. A janela exibirá um botão após a execução do código. Se o usuário clicar no botão, o texto 'Botão pressionado' vai mostrar na etiqueta.

# Importe os módulos necessários
import sys
de PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel
# Defina a classe para criar um único botão de ação
classe ButtonExample (QWidget):
def __init __ (self):
# Chame o construtor pai
super().__iniciar__()
# Crie um botão
auto.btn = QPushButton ('Click Me', self)
# Defina o texto da dica de ferramenta para o botão
auto.btn.setToolTip ('Este é um botão simples')
# Defina a geometria do botão
auto.btn.setGeometry (100, 20, 100, 30)
# Chamar função quando o botão for clicado
auto.btn.clicado.conectar (eu mesmo.onClicked)
# Defina o rótulo na parte inferior do botão
auto.msgLabel = QLabel (", self)
# Defina a geometria do rótulo
auto.msgLabel.setGeometry (90, 60, 290, 60)
# Defina o título da janela
auto.setWindowTitle ('Uso de PushButton')
# Defina a geometria da janela principal
auto.setGeometry (10, 10, 300, 150)
# Defina a posição da janela principal na tela
auto.mover (850, 300)
# Exibir a janela
auto.mostrar()
# Defina a função para lidar com o evento de clique do botão
def onClicked (self):
# Defina o texto para o rótulo
auto.msgLabel.setText ('O botão está pressionado.')
# Crie um objeto de aplicativo e execute o aplicativo
app = QApplication (sys.argv)
button = ButtonExample ()
aplicativo.exec ()

A seguinte janela aparecerá após a execução do script.

Se o usuário clicar no Çlick Me botão, então o seguinte texto aparecerá na legenda abaixo do botão.

Exemplo 2: criar vários botões de ação

O script a seguir criará vários botões usando o QPushButton aula. Dois botões são criados no script. O evento clicado de 'sim'é anexado a um método chamado btn1_onClicked (), e o evento clicado do 'Não'é anexado a um método chamado btn2_onClicked (). Uma legenda criada abaixo dos botões exibirá a mensagem especificada com base no botão clicado pelo usuário. O setGeometry () função é usada para cada rótulo e botão para definir a posição dos objetos na janela.

import sys
de PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel
classe MultiButtons (QWidget):
def __init __ (self):
# Chame o construtor pai
super().__iniciar__()
# Defina o rótulo na parte superior do botão
auto.topLabel = QLabel ('

Você gosta de python?

', auto)
# Defina a geometria do rótulo
auto.topLabel.setGeometry (100, 20, 290, 50)
# Crie o primeiro botão
auto.btn1 = QPushButton ('Sim', próprio)
# Defina a geometria do botão
auto.btn1.setGeometry (130, 70, 60, 40)
# Chamar função quando o botão for clicado
auto.btn1.clicado.conectar (eu mesmo.btn1_onClicked)
# Crie o segundo botão
auto.btn2 = QPushButton ('Não', self)
# Defina a geometria do botão
auto.btn2.setGeometry (200, 70, 60, 40)
# Chamar função quando o botão for clicado
auto.btn2.clicado.conectar (eu mesmo.btn2_onClicked)
# Defina o rótulo na parte inferior do botão
auto.msgLabel = QLabel (", self)
# Defina a geometria do rótulo
auto.msgLabel.setGeometry (130, 120, 300, 80)
# Defina o título da janela
auto.setWindowTitle ('Uso de vários PushButtons')
# Defina a geometria da janela principal
auto.setGeometry (10, 10, 400, 200)
# Defina a posição da janela principal na tela
auto.mover (850, 300)
# Exibir a janela
auto.mostrar()
def btn1_onClicked (self):
# Defina o texto para o rótulo inferior
auto.msgLabel.setText ('

Você clicou em Sim.

')
def btn2_onClicked (self):
# Defina o texto para o rótulo inferior
auto.msgLabel.setText ('

Você clicou em Não.

')
# Crie um objeto de aplicativo e execute o aplicativo
app = QApplication (sys.argv)
botão = MultiButtons ()
aplicativo.exec ()

A seguinte janela aparecerá após a execução do script.

Se o usuário clicar no sim botão, a mensagem, 'Você clicou em Sim'será exibido como o texto do rótulo.

Se o usuário clicar no Não botão, a mensagem, 'Você clicou em Não ' será exibido como o texto do rótulo.

Conclusão

A classe QPushButton permite que os usuários criem um ou mais botões com base nos requisitos do aplicativo. Este tutorial mostrou o uso desta classe para criar um ou vários botões, bem como lidar com eventos de clique de botões usando funções de manipulador de eventos personalizadas.

Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...
Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...
Top jogos do Oculus App Lab
Se você é proprietário de um fone de ouvido Oculus, deve estar informado sobre o carregamento lateral. Sideload é o processo de instalação de conteúdo...