2009-12-20 61 views
2

我正在尋找用於GWT應用的氣球小部件,例如,就像谷歌地圖在地圖上顯示搜索結果時顯示的氣球一樣。用於GWT的氣球小部件

當搜索時,我只找到Javascript小部件,但是沒有GWT中使用的小部件?

回答

3

看看OverLib。這是一個開源的JavaScript庫,以顯示增強的彈出提示窗口。它可以很容易地集成到GWT中。另外,您還可以自由創建自己的HTML彈出窗口。

這裏是我的超級庫幫助代碼片段(overlib必須解壓到你的GWT項目的公共文件夾中)。 與getSimpleToolTip產生的屬性只是添加到您的GWT元素:

public static String getSimpleToolTip(String text, Integer width, Integer height) 
{ 
    String alt = "onmouseout=\"" + getOnMouseOutAttribute() + "\""; 
    alt = alt + " onmouseover=\"" + getOnMouseOverAttribute(text, width, height) + "\""; 
    return alt; 
} 

public static String getOnMouseOutAttribute() 
{ 
    return "return nd();"; 
} 

public static String getOnMouseOverAttribute(String text, Integer width, Integer height) 
{ 
    String out = "return overlib('" + text + "'"; 
    out = out + ", DELAY, 750"; 

    if (width != null) 
    { 
    out = out + ", WIDTH, " + width.toString(); 
    } 

    if (height != null) 
    { 
    out = out + ", HEIGHT, " + height.toString(); 
    } 

    out = out + ");"; 

    return out; 
} 
2

GWT在彈出面板的幫助下創建自己的小部件。像氣球一樣的圖像(圖像背景應該是透明的)並將其設置爲彈出式面板背景。然後根據您的要求添加結果,如「A」 ,「B」等等作爲彈出式面板中的標籤。

+0

好了,它似乎不是那麼容易:在氣球的尾部應指向某個Widget。如果我使用固定背景圖像,情況並非總是如此,因爲PopupPanel.showRelativeTo()會動態定位面板: 「根據彈出窗口的寬度和高度以及目標到底部和右側邊緣的距離窗口中,彈出框可以直接顯示在目標上方,和/或其右邊緣可以與目標的右邊緣對齊。「 (來源:http://google-web-toolkit.googlecode.com/svn/javadoc/2.0/com/google/gwt/user/client/ui/PopupPanel.html) – Bob 2009-12-28 16:34:09

+0

嗯,它歸結爲使用3x3表與一組8個背景圖像。然後,你在所需的位置疊加邊框背景圖像與箭頭圖像......簡單但很多工作。 – user1050755 2014-03-19 07:11:31