2013-03-28 32 views
1

我的目標是讓一個帶有背景圖像的按鈕以及這些標籤的ontop。 我想將標籤放在按鈕的中心,並垂直對齊它的文本。我希望該按鈕可以擴展爲標籤中字符的數量。什麼是用於構建這種類型的複合小部件的最佳類型的面板,因爲我遇到了使用AbsolutePanel的問題,因爲它不會隨其子元素動態增長。動態定位GWT小部件

private PushButton button; 
private Label label = new Label(); 
private AbsolutePanel panel = new AbsolutePanel(); 
private Image image = new Image("images/rectangle_blue.png"); 

public ExpandingRectangularButton(String text) 
{ 
    label.setText(text); 
    String width = "120px"; 
    String height = "160px"; 
    image.setWidth(width); 
    image.setHeight(height); 
    button = new PushButton(image); 

    panel.add(button, 0, 0); 
    panel.setWidth(width); 
    panel.setHeight(height); 
    initWidget(panel); 
} 

什麼是在這種情況下使用的最佳類型的面板?我已經嘗試過流動,水平和flextables,但我無法正確地將這些部件堆疊在彼此之上

+0

您是否嘗試過使用CSS來做到這一點..您可以保留圖像爲標籤的bg,text-align:center – JAVAC

回答

0

FlowPanel??

A FlowPanel在定向流程中排列組件,非常類似於段落中的文本行。

+0

如何使用流程面板在圖像的頂部放置標籤? – MayoMan

+0

我的選擇是用safehtml ..而不是許多行代碼。 –

+0

我同意SCK,您可以將圖像設置爲FlowPanel的背景,並將該標籤放置在FlowPanel中。 – NickD