我有一個由文本框和自定義小部件組成的複合小部件,然後將其添加到verticalPanel。我使用Raphael JS創建了這個自定義小部件。ClickListener for Composite Widget
現在我想讓這個Composite小部件識別單擊事件和ctrl事件。我嘗試在兩個類中實現clicklistener,但沒有結果。
這裏是代碼佈局設計:
此類創建由拉斐爾JS自定義窗口小部件:
public class CustomShapeRet extends RaphaelJSWidget{
public CustomShapeRet(){
super();
Rectangle r = new Rectangle(10, 10, 50, 20);
r.attr("stroke", "black");
r.attr("stroke-width", "5");
}
}
該類這裏產生合成部件:
public class Test extends Composite{
public Test(){
TextBox t1 = new TextBox();
t1.setSize("100px", "20px");
t1.setText("Hi");
t1.setTitle("textbox");
CustomShapeRet r = new CustomShapeRet();
r.setTitle("rec");
VerticalPanel v1 = new VerticalPanel();
v1.setStyleName("vertical");
v1.add(r);
v1.add(t1);
initWidget(v1);
}
}
問題: 有沒有辦法讓這個工作?你會推薦什麼?
謝謝。
RaphaelJSWidget是一個將底層Raphael JavaScript轉換爲Widget的類。我需要繪製形狀,因此我正在使用這個。我從水電項目中獲得了這個想法。這裏是鏈接:http://googlewebtoolkit.blogspot.com/2009/09/hydro4ge-paas-built-with-gwt.html 現在我相信我面臨的問題是因爲這個raphael,因爲我不知道關於如何將鼠標事件添加到raphael畫布。有什麼建議麼? 謝謝。 – suprasad
謝謝。是的,我有RaphelJSWidget類擴展Widget,但由於某種原因,它不工作。 – suprasad