1

キャンセルボタンのクリック時にウィンドウIDを使用せずにZKでウィンドウを閉じる方法は?

zul ファイルのコード

<window apply="org.zkoss.bind.BindComposer" width="700px"
        height="500px" title="ReDefault Folder" mode="modal" border="normal"
        closable="true"
        viewModel="@id('vm') @init('web.viewmodel.FolderRedefaultViewModel')" visible="@load(vm.showDialog)">

<x:table border="0" align="right">
                <x:tr>

                    <x:td align="right" width="20px">

                        <button label="OK" width="80px"
                            onClick="@command('insertDefaultOnOk')">
                        </button>
                    </x:td>
                    <x:td align="left">

                        <button label="Cancle" width="80px"
                            onClick="@command('nOk')">
                        </button>
                    </x:td>
                </x:tr>
            </x:table>
    </window>

このボタンをクリックすると、ウィンドウを閉じたい

4

2 に答える 2

6

これを試すことができます:
1. ウィンドウに id を与えます: <window id="mywin"...
2. ボタンに onClick を追加します:<button onClick="mywin.detach()"...

または、コマンド ハンドラから実行する場合は、ウィンドウをパラメータとして渡します:
1. <window id="mywin"...
2. <button onClick="@command('test', cmp=mywin)"
3.

@Command
public void test(@BindingParam("cmp")  Window x) {
    x.detach();
}

または割り当てられた id なし:の代わりに ZUL で
使用するだけです。これは次のようになります。getParent().getParent().getParent().getParent()mywin

  • ボタンの親:td
  • td の親:tr
  • トラの親table
  • テーブルの親:window
于 2013-02-05T10:42:19.040 に答える