簡體   English   中英

擴展GWT的Widget類

[英]Extending GWT's Widget Class

我正在創建一個名為“ Cell”的新類,該類擴展了GWT Widget類。 此類的目的是成為電子表格中的單元格-因此,它必須能夠在作為GWT Label對象和GWT TextBox對象之間進行切換。

我能想到的唯一方法是使Cell擴展Widget並包含一個名為“ cell”的私有Widget,我可以使用它存儲當前的Label或TextBox對象。 像這樣

public class Cell extends Widget {

private Widget cell;

...

}

不幸的是,這種解決方案並不理想,因為如果我希望Cell像Widget那樣完全運行,我將覆蓋Widget的方法以指向內部的“ cell” Widget。 有沒有更優雅的方式來創建可以是Label或TextBox的Cell Widget?

為什么不擴展Composite而不是擴展Widget?

public class Cell extends Composite {
    private Label label;
    private TextBox textBox;
    private SomeContainerWidget container;

   ...
}

只需根據需要將labeltextBox小部件添加/刪除到container中。

使用復合是更優雅的方法,因為您不公開整個Widget接口,而只公開電子表格單元格所需的方法。

請查看GWT文檔中的此部分以構建自定義窗口小部件,以獲取更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM