bonjour , je suis débutant avec GXT .
je veux passer un code de gwt à gxt , mon probléme que dans mon code Gwt j'ai une classe qui implémente Clickhandler et dans laquelle il y a tout un traitement
puis je fais l'appel de cette classe"MyHandler " par
MyHandler handler = new MyHandler();
sendButton.addClickHandler(handler);
pour passer à gxt j'ai pas trouver quelque chose qui rassemble.
voila mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158 package zzz.fff.ggg.client; import zzz.fff.ggg.shared.FieldVerifier; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.core.client.GWT; import com.google.gwt.event.logical.shared.SelectionEvent; import com.google.gwt.event.logical.shared.SelectionHandler; import com.google.gwt.event.logical.shared.ValueChangeEvent; import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.ui.HTML; import com.google.gwt.user.client.ui.RootPanel; import com.extjs.gxt.ui.client.Style.HorizontalAlignment; import com.extjs.gxt.ui.client.event.ButtonEvent; import com.extjs.gxt.ui.client.event.SelectionListener; import com.extjs.gxt.ui.client.widget.Dialog; import com.extjs.gxt.ui.client.widget.Label; import com.extjs.gxt.ui.client.widget.VerticalPanel; import com.extjs.gxt.ui.client.widget.button.Button; import com.extjs.gxt.ui.client.widget.form.TextField; /** * Entry point classes define <code>onModuleLoad()</code>. */ public class GxtZzz implements EntryPoint { /** * The message displayed to the user when the server cannot be reached or * returns an error. */ private static final String SERVER_ERROR = "An error occurred while " + "attempting to contact the server. Please check your network " + "connection and try again."; /** * Create a remote service proxy to talk to the server-side Greeting service. */ private final GreetingServiceAsync greetingService = GWT .create(GreetingService.class); /** * This is the entry point method. */ public void onModuleLoad() { final Button sendButton = new Button("Send"); final TextField<String> nameField = new TextField<String>(); final Dialog dialogBox = new Dialog(); final Label textToServerLabel = new Label(); final HTML serverResponseLabel = new HTML(); final Label errorLabel = new Label(); // We can add style names to widgets sendButton.addStyleName("sendButton"); // Add the nameField and sendButton to the RootPanel // Use RootPanel.get() to get the entire body element RootPanel.get("nameFieldContainer").add(nameField); RootPanel.get("sendButtonContainer").add(sendButton); RootPanel.get("errorLabelContainer").add(errorLabel); // Focus the cursor on the name field when the app loads nameField.focus(); nameField.selectAll(); // Create the popup dialog box dialogBox.setHeading("Remote Procedure Call"); dialogBox.setAnimCollapse(true); final Button closeButton = new Button("Close"); // We can set the id of a widget by accessing its Element closeButton.getElement().setId("closeButton"); VerticalPanel dialogVPanel = new VerticalPanel(); dialogVPanel.addStyleName("dialogVPanel"); dialogVPanel.add(new HTML("<b>Sending name to the server:</b>")); dialogVPanel.add(textToServerLabel); dialogVPanel.add(new HTML("<br><b>Server replies:</b>")); dialogVPanel.add(serverResponseLabel); dialogVPanel.setHorizontalAlign(HorizontalAlignment.RIGHT); dialogVPanel.add(closeButton); //dialogBox.setWidget(dialogVPanel); // Add a handler to close the DialogBox closeButton.addSelectionListener(new SelectionListener<ButtonEvent>() { public void componentSelected(ButtonEvent ce) { dialogBox.hide(); sendButton.setEnabled(true); sendButton.focus(); } }); // Create a handler for the sendButton and nameField @SuppressWarnings("unused") class MyHandler implements SelectionHandler<ButtonEvent> { /** * Fired when the user clicks on the sendButton. */ public void onClick(ButtonEvent event) { sendNameToServer(); } /** * Fired when the user types in the nameField. */ /** * Send the name from the nameField to the server and wait for a response. */ private void sendNameToServer() { // First, we validate the input. errorLabel.setText(""); String textToServer = nameField.getValue(); if (!FieldVerifier.isValidName(textToServer)) { errorLabel.setText("Please enter at least four characters"); return; } // Then, we send the input to the server. sendButton.setEnabled(false); textToServerLabel.setText(textToServer); serverResponseLabel.setText(""); greetingService.greetServer(textToServer, new AsyncCallback<String>() { public void onFailure(Throwable caught) { // Show the RPC error message to the user dialogBox .setHeading("Remote Procedure Call - Failure"); serverResponseLabel .addStyleName("serverResponseLabelError"); serverResponseLabel.setHTML(SERVER_ERROR); dialogBox.center(); closeButton.focus(); } public void onSuccess(String result) { dialogBox.setHeading("Remote Procedure Call"); serverResponseLabel .removeStyleName("serverResponseLabelError"); serverResponseLabel.setHTML(result); dialogBox.center(); closeButton.focus(); } }); } @Override public void onSelection(SelectionEvent<ButtonEvent> event) { // TODO Auto-generated method stub } } // Add a handler to send the name to the server MyHandler handler= new MyHandler(); sendButton.?????????? } }
quesque je dois ajouter pour que le bouton sendButton exécute ce qu'il ya dans la classe MyHandler.
Merci d'avance .
Partager