GWT - Widget FocusPanel

introduction

le FocusPanel widget représente un panneau simple qui rend son contenu focalisable et ajoute la possibilité de capturer les événements de la souris et du clavier.

Déclaration de classe

Voici la déclaration pour com.google.gwt.user.client.ui.FocusPanel classe -

public class FocusPanel
   extends SimplePanel
      implements HasFocus, SourcesClickEvents, 
         SourcesMouseEvents, SourcesMouseWheelEvents, 
            HasAllMouseHandlers, HasClickHandlers, 
               HasDoubleClickHandlers, HasAllKeyHandlers,
                  HasAllFocusHandlers

Constructeurs de classe

N ° Sr. Constructeur et description
1

FocusPanel()

Crée un panneau de mise au point vide.

2

FocusPanel(Widget child)

Crée un nouveau panneau de sélection avec le widget enfant donné.

Méthodes de classe

N ° Sr. Nom et description de la fonction
1

HandlerRegistration addBlurHandler(BlurHandler handler)

Ajoute un gestionnaire BlurEvent.

2

HandlerRegistration addClickHandler(ClickHandler handler)

Ajoute un gestionnaire ClickEvent.

3

void addClickListener(ClickListener listener)

Obsolète. Utilisez plutôt addClickHandler (com.google.gwt.event.dom.client.ClickHandler)

4

HandlerRegistration addDoubleClickHandler (DoubleClickHandler handler)

Ajoute un gestionnaire DoubleClickEvent.

5

HandlerRegistration addFocusHandler(FocusHandler handler)

Ajoute un gestionnaire FocusEvent.

6

void addFocusListener (FocusListener listener)

Obsolète. Utilisez plutôt addFocusHandler (com.google.gwt.event.dom.client.FocusHandler)

sept

void addKeyboardListener (KeyboardListener listener)

Obsolète. Utilisez addKeyDownHandler (com.google.gwt.event.dom.client.KeyDownHandler), addKeyUpHandler (com.google.gwt.event.dom.client.KeyUpHandler) et addKeyPressHandler (com.google.gwt.event.dom.client.KeyPressHandler) ) au lieu

8

HandlerRegistration addKeyDownHandler (KeyDownHandler handler)

Ajoute un gestionnaire KeyDownEvent.

9

HandlerRegistration addKeyPressHandler (KeyPressHandler handler)

Ajoute un gestionnaire KeyPressEvent.

dix

HandlerRegistration addKeyUpHandler (KeyUpHandler handler)

Ajoute un gestionnaire KeyUpEvent.

11

HandlerRegistration addMouseDownHandler (MouseDownHandler handler)

Ajoute un gestionnaire MouseDownEvent.

12

void addMouseListener(MouseListener listener)

Obsolète. Utilisez addMouseOverHandler (com.google.gwt.event.dom.client.MouseOverHandler), addMouseMoveHandler (com.google.gwt.event.dom.client.MouseMoveHandler), addMouseDownHandler (com.google.gwt.event.dom.client.Mouse.gwt.event.dom.client.Mouse.gwt.event.dom.client.Mouse. ), addMouseUpHandler (com.google.gwt.event.dom.client.MouseUpHandler) et addMouseOutHandler (com.google.gwt.event.dom.client.MouseOutHandler) à la place

13

HandlerRegistration addMouseMoveHandler(MouseMoveHandler handler)

Ajoute un gestionnaire MouseMoveEvent.

14

HandlerRegistration addMouseOutHandler(MouseOutHandler handler)

Ajoute un gestionnaire MouseOutEvent.

15

HandlerRegistration addMouseOverHandler(MouseOverHandler handler)

Ajoute un gestionnaire MouseOverEvent.

16

HandlerRegistration addMouseUpHandler(MouseUpHandler handler)

Ajoute un gestionnaire MouseUpEvent.

17

HandlerRegistration addMouseWheelHandler(MouseWheelHandler handler)

Ajoute un gestionnaire MouseWheelEvent.

18

void addMouseWheelListener(MouseWheelListener listener)

Obsolète. Utilisez plutôt addMouseWheelHandler (com.google.gwt.event.dom.client.MouseWheelHandler)

19

int getTabIndex()

Obtient la position du widget dans l'index de l'onglet.

20

void removeClickListener(ClickListener listener)

Obsolète. Utilisez plutôt la méthode HandlerRegistration.removeHandler () sur l'objet renvoyé par addClickHandler (com.google.gwt.event.dom.client.ClickHandler)

21

void removeFocusListener(FocusListener listener)

Obsolète. Utilisez plutôt la méthode HandlerRegistration.removeHandler () sur l'objet renvoyé par addFocusHandler (com.google.gwt.event.dom.client.FocusHandler)

22

void removeKeyboardListener(KeyboardListener listener)

Obsolète. Utilisez plutôt la méthode HandlerRegistration.removeHandler () sur l'objet retourné par une méthode add * Handler

23

void removeMouseListener(MouseListener listener)

Obsolète. Utilisez plutôt la méthode HandlerRegistration.removeHandler () sur l'objet retourné par une méthode add * Handler

24

void removeMouseWheelListener(MouseWheelListener listener)

Obsolète. Utilisez plutôt la méthode HandlerRegistration.removeHandler () sur l'objet renvoyé par addMouseWheelHandler (com.google.gwt.event.dom.client.MouseWheelHandler)

25

void setAccessKey(char key)

Définit la «clé d'accès» du widget.

26

void setFocus(boolean focused)

Focalisez / détachez explicitement ce widget.

27

void setTabIndex(int index)

Définit la position du widget dans l'index de l'onglet.

Méthodes héritées

Cette classe hérite des méthodes des classes suivantes -

  • com.google.gwt.user.client.ui.UIObject

  • com.google.gwt.user.client.ui.Widget

  • com.google.gwt.user.client.ui.Panel

  • com.google.gwt.user.client.ui.SimplePanel

  • java.lang.Object

Exemple de widget FocusPanel

Cet exemple vous guidera à travers des étapes simples pour montrer l'utilisation d'un widget FocusPanel dans GWT. Suivez les étapes suivantes pour mettre à jour l'application GWT que nous avons créée dans GWT - Chapitre Créer une application -

Étape La description
1 Créez un projet avec un nom HelloWorld sous un package com.tutorialspoint comme expliqué dans le chapitre GWT - Créer une application .
2 Modifiez HelloWorld.gwt.xml , HelloWorld.css , HelloWorld.html et HelloWorld.java comme expliqué ci-dessous. Gardez le reste des fichiers inchangé.
3 Compilez et exécutez l'application pour vérifier le résultat de la logique implémentée.

Voici le contenu du descripteur de module modifié 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>

Voici le contenu du fichier de feuille de style modifié 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;
}

Voici le contenu du fichier hôte HTML modifié 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>FocusPanel Widget Demonstration</h1>
      <div id = "gwtContainer"></div>
   </body>
</html>

Laissez-nous avoir le contenu suivant du fichier Java src/com.tutorialspoint/HelloWorld.java qui démontrera l'utilisation du widget FocusPanel.

package com.tutorialspoint.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.DecoratorPanel;
import com.google.gwt.user.client.ui.FocusPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.RootPanel;

public class HelloWorld implements EntryPoint {

   public void onModuleLoad() {
      // Create text 
      HTML contents = new HTML("This is a FocusPanel."
         +" Click on the panel and it will attain focus.");

      //create focus panel with content
      FocusPanel focusPanel = new FocusPanel(contents);
      focusPanel.setSize("400px", "100px");

      DecoratorPanel decoratorPanel = new DecoratorPanel();

      decoratorPanel.add(focusPanel);

      // Add the widgets to the root panel.
      RootPanel.get().add(decoratorPanel);
   }        
}

Une fois que vous êtes prêt avec tous les changements effectués, laissez-nous compiler et exécuter l'application en mode développement comme nous l'avons fait dans le chapitre GWT - Créer une application . Si tout va bien avec votre application, cela produira le résultat suivant -