GWT - Widget PushButton
Introdução
o PushButton widget representa um botão de ação padrão com estilo personalizado.
Declaração de Classe
A seguir está a declaração para com.google.gwt.user.client.ui.PushButton classe -
public class PushButton
extends CustomButton
Regras de estilo CSS
As seguintes regras de estilo CSS padrão serão aplicadas a todos os widgets PushButton. Você pode substituí-lo de acordo com seus requisitos.
.gwt-PushButton-up {}
.gwt-PushButton-down {}
.gwt-PushButton-up-hovering {}
.gwt-PushButton-down-hovering {}
.gwt-PushButton-up-disabled {}
.gwt-PushButton-down-disabled {}
Construtores de classe
Sr. Não. | Construtor e descrição |
---|---|
1 | PushButton() Construtor para PushButton. |
2 | PushButton(Image upImage) Cria um PushButton com imagem de estado para cima. |
3 | PushButton(Image upImage, ClickListener listener) Cria um PushButton com imagem de estado para cima e clickListener. |
4 | PushButton(Image upImage, Image downImage) Cria um PushButton com imagem de estado para cima. |
5 | PushButton(Image upImage, Image downImage, ClickListener listener) Cria um PushButton com imagem de estado para cima. |
6 | PushButton(java.lang.String upText) Cria um PushButton com texto de estado para cima. |
7 | PushButton(java.lang.String upText, ClickListener listener) Cria um PushButton com texto de estado para cima e listener de cliques. |
8 | PushButton(java.lang.String upText, java.lang.String downText) Cria um PushButton com texto de estado para cima e para baixo. |
9 | PushButton(java.lang.String upText, java.lang.String downText, ClickListener listener) Cria um PushButton com estado para cima, texto de estado para baixo e ouvinte de clique. |
Métodos de aula
Sr. Não. | Nome e descrição da função |
---|---|
1 | protected void onClick() Chamado quando o usuário termina de clicar neste botão. |
2 | protected void onClickCancel() Chamado quando o usuário aborta um clique em andamento; por exemplo, arrastando o mouse para fora do botão antes de soltar o botão do mouse. |
3 | protected void onClickStart() Chamado quando o usuário começa a clicar neste botão. |
Métodos herdados
Esta classe herda métodos das seguintes classes -
com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.Widget
com.google.gwt.user.client.ui.FocusWidget
com.google.gwt.user.client.ui.CustomWidget
java.lang.Object
Exemplo de widget PushButton
Este exemplo o levará por etapas simples para mostrar o uso de um widget PushButton no GWT. Siga as etapas a seguir para atualizar o aplicativo GWT que criamos no GWT - capítulo Criar aplicativo -
Degrau | Descrição |
---|---|
1 | Crie um projeto com o nome HelloWorld em um pacote com.tutorialspoint conforme explicado no capítulo GWT - Criar aplicativo . |
2 | Modifique HelloWorld.gwt.xml , HelloWorld.css , HelloWorld.html e HelloWorld.java conforme explicado abaixo. Mantenha o resto dos arquivos inalterados. |
3 | Compile e execute o aplicativo para verificar o resultado da lógica implementada. |
A seguir está o conteúdo do descritor do módulo modificado src/com.tutorialspoint/HelloWorld.gwt.xml.
<?xml version = "1.0" encoding = "UTF-8"?>
<module rename-to = 'helloworld'>
<!-- Inherit the core Web Toolkit stuff. -->
<inherits name = 'com.google.gwt.user.User'/>
<!-- Inherit the default GWT style sheet. -->
<inherits name = 'com.google.gwt.user.theme.clean.Clean'/>
<!-- Specify the app entry point class. -->
<entry-point class = 'com.tutorialspoint.client.HelloWorld'/>
<!-- Specify the paths for translatable code -->
<source path = 'client'/>
<source path = 'shared'/>
</module>
A seguir está o conteúdo do arquivo de folha de estilo modificado war/HelloWorld.css.
body {
text-align: center;
font-family: verdana, sans-serif;
}
h1 {
font-size: 2em;
font-weight: bold;
color: #777777;
margin: 40px 0px 70px;
text-align: center;
}
.gwt-PushButton {
color:red;
}
.gwt-PushButton-up {
color:green;
}
.gwt-PushButton-down {
color:blue;
}
.gwt-PushButton-up-hovering {
color:pink;
}
.gwt-PushButton-down-hovering {
color:aqua;
}
.gwt-PushButton-up-disabled {
color:lime;
}
.gwt-PushButton-down-disabled {
color:maroon;
}
A seguir está o conteúdo do arquivo host HTML modificado war/HelloWorld.html.
<html>
<head>
<title>Hello World</title>
<link rel = "stylesheet" href = "HelloWorld.css"/>
<script language = "javascript" src = "helloworld/helloworld.nocache.js">
</script>
</head>
<body>
<h1>PushButton Widget Demonstration</h1>
<div id = "gwtContainer"></div>
</body>
</html>
Vamos ter o seguinte conteúdo do arquivo Java src/com.tutorialspoint/HelloWorld.java que demonstrará o uso do widget PushButton.
package com.tutorialspoint.client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.PushButton;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
public class HelloWorld implements EntryPoint {
public void onModuleLoad() {
//create a push button
PushButton pushButton = new PushButton("Click Me!");
//create a push button
PushButton pushButton1 = new PushButton("Click Me!");
//disable a push button
pushButton1.setEnabled(false);
//add a clickListener to the push button
pushButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Window.alert("Hello World!");
}
});
// Add push buttons to the root panel.
VerticalPanel panel = new VerticalPanel();
panel.setSpacing(10);
panel.add(pushButton);
panel.add(pushButton1);
RootPanel.get("gwtContainer").add(panel);
}
}
Quando você estiver pronto com todas as alterações feitas, vamos compilar e rodar o aplicativo em modo de desenvolvimento como fizemos no capítulo GWT - Criar Aplicativo . Se tudo estiver bem com sua aplicação, isso produzirá o seguinte resultado -
Quando você clica Click Me botão, ele mostrará uma mensagem de alerta Hello World!
Você pode ver a cor do texto do botão e seu estado mudará com a sua interação.
Passe o mouse sobre o botão, a cor será rosa.
Pressione o botão, a cor será água.
Solte o botão, a cor ficará verde.