我是gwt框架的新手,我用它来构建我的网站的ui, 我想让文本框中有一个文本,一旦用户第一次点击它,文本就会消失。在其他时间它的行为就像一个普通的文本框
关于如何做的任何想法?
答案 0 :(得分:2)
创建文本框时,请设置默认文本并添加键盘侦听器:
TextBox box = new TextBox();
box.setText("Default Text");
box.addKeyboardListener(this);
defaultValue = true; // this is a global boolean value
然后让你的类实现KeyboardListener,将它们全部留空,除了:
public void onKeyPress(Widget arg0, char arg1, int arg2)
{
if(defaultValue)
{
box.setText = "";
defaultValue = false;
}
}
答案 1 :(得分:1)
您可以在框中添加clickHandler
。
在处理程序中,您可以轻松完成以下操作:
if(text==DEFAULT_TEXT)
{
text==""
}
如果某人要再次写同一DEFAULT_TEXT
,那么它将再次被删除。
如果你想避免在check表达式中添加boolean变量。
答案 2 :(得分:0)
无法告诉GWT,但一般方法可能是:
(对于点击监听器:在第一次点击窗口小部件时清除标志和文本框。)