[英]Handling Application commands in GWT
Swing使用動作在多個GUI組件(例如菜單項和工具欄按鈕)之間共享功能和狀態。 XUL在其Command框架中使用了類似的方法。
處理GWT中類似要求的典型/最佳方法是什么? 我對顯示菜單項或按鈕是啟用還是禁用特別感興趣。
我使用Command類。 GWT MenuItem可以具有與之關聯的命令。 以下是一些相關的代碼片段:
Command printCommand = new Command() {
@Override
public void execute() {
myEventBus.fireEvent(new PrintEvent());
}
};
MenuItem print = new MenuItem();
print.setCommand(printCommand);
請注意,您可以通過調用printCommand.execute()來簡單地執行printCommand。 例如,您可以具有一個ClickHandler為其調用printCommand.execute()的打印按鈕,因此它具有與上述代碼中的菜單項完全相同的效果。
現在,我知道在Swing中,動作與小部件之間存在巧妙的交互作用,因此,通過啟用或禁用動作,可以同時啟用或禁用所有小部件。 Command並沒有那么緊密地捆綁在一起,而且我認為GWT中沒有像Swing中的那種一站式啟用/禁用功能那樣的東西。 話雖如此,您也許可以擴展Command,以便以某種方式注冊使用該命令觸發該命令的窗口小部件,並且該命令具有啟用方法,該方法在被調用時會逐步瀏覽所需的窗口小部件列表,以啟用和禁用它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.