ウィンドウの追加

ボタンを押下したら別ウィンドウを表示させてみる。

まずは表示させるウィンドウのXMLを作成

SubDisp.xml

<?xml version="1.0" encoding="UTF-8"?>
<template xmlns="http://uruma.sandbox.seasar.org">
 <window title="メインメニュー" background="white" width="800" height="600">
  <gridLayout numColumns="1" >
   <gridData horizontalAlignment="FILL" widthHint="150"/>
  </gridLayout>

  <text id="title"/>
  <button id="button" text="ボタン"/>
 </window>
</template>

で表示させるためにEventListenerでボタンイベントを検出する。

MenuAction.java

package gui.test;

import org.eclipse.swt.widgets.Shell;
import org.seasar.framework.container.annotation.tiger.Component;
import org.seasar.uruma.annotation.EventListener;
import org.seasar.uruma.core.UrumaWindowManager;

@Component(name="menuAction")
public class MenuAction {
 public Shell shell;
 public UrumaWindowManager windowManager;
 

 @EventListener(id="button")
 public void button(){
  windowManager.openWindow("gui/test/subDisp.xml", true);
 }
}

UrumaWindowManager#openWIndowで新規画面が表示されます。

ちなみに画面を閉じると標準出力にエラーが表示されるけど今は無視。