2012-04-16 88 views
1

在面板中,我加入3-複合複合在GWT

public class frame { 

//Initialization 
.... 
.... 
public Service service = new Service(); 

public frame() { 
    initWidget(getFramePanel()); 
} 

private HorizontalPanel getFramePanel() { 
    if (hp== null) { 
     hp= new HorizontalPanel(); 
     hp.setSize("1442px", "750px"); 
     hp.add(getTree());// **are composites** 
     hp.add(getTable()); // **are composite** 

    } 
    return hp; 
} 

我明白的是,這兩種treetable加到hp在同一類,所以可使用變量或對象在該初始化類,同時在複合材料

例如:service對象是frame類,所以我想知道我whethr可以在兩個複合使用service

樹和表複合。如果是,那麼如何?

此代碼可能不正確,因爲我沒有複製粘貼代碼。

回答

2

您可以嘗試使用Observer模式,創建一個接口,該接口具有調用服務的方法,例如。 「callService」並創建一個對象「MyInterfaceImpl」在類「框架」中實現此接口。該對象將實現接口,以便它將獲取和使用兩個子項(getTree()和getTable())組合的值。

通過這個對象MyInterfaceImpl到兩個複合材料,無論是通過構造函數或方法,那麼你可以隨時「無論從複合S分析」 UI對象的事件處理程序調用該對象MyInterfaceImpl

希望有所幫助。

1

您可以在樹和表上設置的任何回調,事件處理程序等中使用該服務。但我相信你必須做出最終決定。