【译】GWT入门:管理客户端事件
【译自:https://developers.google.com/web-toolkit/doc/latest/tutorial/manageevents?hl=zh-CN】
?
到此,我们已经创建了所有需要的UI控件。和许多其他的用户界面框架一样,GWT也是基于事件驱动的,也就是说代码会在响应某此发生的事件时被执行。经常,这些事件是由用户触发的,例如使用键盘或鼠标。
?
这一节,我们要给我们的控件添加鼠标和键盘响应事件。
?
一、审视事件处理需求首先我们检查一下StockWatcher中哪些事件需要处理是:
?
TaskUI Event (Trigger mechanism)Response用户输入股票代码点击Add按钮或在文本框中按回车验证输入检查是否存在增加新行创建删除按钮用户删除股票按下Remove按钮从表格中删除当前行?
GWT提供了一系列的事件处理接口。为了处理Add和Remove按钮事件,我们需要使用ClickHandler 接口;为了处理键盘事件,我们需要使用KeyPressHandler接口。
?
注:从GWT1.6开始, ClickHandler,KeyDownHandler,KeyPressHandler和KeyUpHandler接口已经替换了旧的ClickListener和KeyBoardListener接口了。
对输入框newSymbolTextBox添加keypress事件在onModuleLoad方法,复制和粘贴以"Listen for keyboard events in the input box."注释部分的代码。
验证在StockWatcher.java中,以以下代码替换addStock方法:
在Development模式下测试在已经打开的浏览器里刷新
Tip:?在Development模式下,你们代码修改会立即生效,只需要在浏览器上刷新即可。你不需要重新启动应用
?