|
||||||||||||||||||
|
DialogBox の利用GWT で下のスクリーンショットのような、ダイアログボックスを表示する方法を示します。
GWT ではダイアログボックスは、DialogBox クラスを利用します。 DialogBox は基本的にタイトルバー付きの PopupPanel といえます。ユーザーに何か情報を示しつつ、 ユーザーにインプットを促すことができます。また、ユーザーはダイアログボックスを ドラッグすることもできます。
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.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
public class Gwttest1 implements EntryPoint {
public void onModuleLoad() {
final Button popupButton = new Button("Show Dialog");
popupButton.addClickHandler(new ClickHandler(){
@Override
public void onClick(ClickEvent event) {
final MyDialogBox diag = new MyDialogBox();
diag.show();
diag.center();
}
});
RootPanel.get().add(popupButton);
}
private class MyDialogBox extends DialogBox {
public MyDialogBox(){
setText("Hello, DialogBox Title");
Button closeButton = new Button("Close");
closeButton.addClickHandler(new ClickHandler(){
@Override
public void onClick(ClickEvent event) {
hide();
}
});
VerticalPanel panel = new VerticalPanel();
panel.add(new Label("Hello! DialogBox! This is a message."));
panel.add(closeButton);
setWidget(panel);
}
}
}
上のコードでは DialogBox を派生して、 MyDialogBox という名前のクラスを定義しています。 MyDialogBox ではコンストラクタで動作を全て定義しています。 まず Button をひとつ定義し (closeButton)、 それにクリックハンドラを設定しています。 クリック時に行うことは、hide() メソッドを呼ぶことだけです。 次に VerticalPanel をひとつ用意し、 順番にラベルと上で作った closeButton を追加しています。 Label にはここでは適当なメッセージをセットしています。 最後に、setWidget メソッドで VerticalPanel をダイアログにセットしています。 |
|
||||||||||||||||
|
© 2010 Google Web Toolkit (GWT) 入門 |
||||||||||||||||||