1. 屏蔽右键菜单
首先在 EntryPoint 中 加入一下代码, 使得不弹右键菜单
RootLayoutPanel.get().addDomHandler(new ContextMenuHandler() {
@Override public void onContextMenu(ContextMenuEvent event) {
event.preventDefault();
event.stopPropagation();
}
}, ContextMenuEvent.getType());
2.需要弹菜单的控件,比如表格grid ,增加mouseup响应, popupPanel 是放置了 MenuBar 的 PopupPanel , 在MenuItem的Command 响应中, 将 popupPanel 调 hide()
注意是如果在显示 popupPanel 时, x 或 y 位置都不加 一个大于2的值, 也会同时显示网页菜单, 不知为啥, 会加也是逼出来的.
grid.addDomHandler(new MouseUpHandler() {
public void onMouseUp(MouseUpEvent event) {
// TODO Auto-generated method stub
if (event.getNativeButton() == NativeEvent.BUTTON_RIGHT) {
System.out.println("MouseUpHandler : " + event.getNativeButton());
event.preventDefault();
event.stopPropagation();
popupPanel.setPopupPosition(event.getClientX(), event.getClientY()+2);
popupPanel.show();
}
}
}, MouseUpEvent.getType());
3. 离线Google地图,
先用了V2的, 后来发现了申请不了key了, 后来发现V3不用Key了,就改V3,还好能用. 参考了网上的例子 GoogleMapsAPIv3_OfflinePack , 非常感谢的.
该例子合入GWT中后, 发现还是挺好用的, 本地地图基本没有问题, 就差以后自己导入title了.
HTML中合入:
<script type="text/javascript" src="mapapi.js"></script>
<script>
function LocalMapType() {}
LocalMapType.prototype.tileSize = new google.maps.Size(256, 256);
LocalMapType.prototype.maxZoom = 17;
LocalMapType.prototype.minZoom = 14;
LocalMapType.prototype.name = "本地";
LocalMapType.prototype.alt = "显示本地地图";
LocalMapType.prototype.getTile = function(coord, zoom, ownerDocument) {
var img = ownerDocument.createElement("img");
img.style.width = this.tileSize.width + "px";
img.style.height = this.tileSize.height + "px";
var ymax = 1 << zoom;
var y = ymax - coord.y - 1;
//var strURL = "mytile\\" + zoom + "\\" + coord.x + "\\" + y + ".png";
var strURL = "expotile/" + zoom + "/" + coord.x + "/" + y + ".png";
img.src = strURL;
return img;
};
</script>
程序中合入:
/**
* Internal initialization method.
*/
private static final native GoogleMap getLocalMap()/*-{
var myLatlng = new $wnd.google.maps.LatLng(31.18439, 121.49454);
var myOptions = {
center: myLatlng,
zoom: 14,
streetViewControl: false,
mapTypeControlOptions: {
mapTypeIds: ["local", $wnd.google.maps.MapTypeId.ROADMAP]
}
};
var local = new $wnd.google.maps.Map($doc.getElementById('map_canvas'),
myOptions);
//map.setMapTypeId('satellite');
//map.MapTypes.insertAt(0, moonMapType);
local.mapTypes.set('local', new $wnd.LocalMapType());
local.setMapTypeId('local');
return local;
}-*/;
调用后,就可以当正常对象使用:
GoogleMap map = getLocalMap();
map.setCenter(LatLng.create(31.18439, 121.49454));
地图的div加入panel中, 在ie中要手工设 mapPanel 的大小, google浏览器不用,还没有发现为啥
RootPanel mapPanel = RootPanel.get("map_canvas");
contentPanel.add(mapPanel, DockPanel.NORTH);
contentPanel.setCellWidth(mapPanel, "100%");
mapPanel.setSize("900px", "800px");
分享到:
相关推荐
#### 一、GWT Web实现右键菜单的多种方式 GWT(Google Web Toolkit)作为一款强大的Java到JavaScript编译工具,使得开发者能够使用熟悉的Java语言构建复杂的Web应用。然而,在实际开发过程中,GWT用户会遇到各种...
首先,EXT-GWT2.0.1是EXT-GWT(GWT-Ext)的一个版本,它是基于GWT的组件库,提供了丰富的用户界面组件,如表格、树形视图、菜单等,使得开发者可以构建出具有桌面级用户体验的Web应用。EXT-GWT的API和DOC文档对于...
在GWT(Google Web Toolkit)中,实现一个简单的树状菜单是常见的需求,尤其是在构建具有层级结构的数据展示或导航功能的Web应用时。GWT提供了一套完整的UI组件库,其中包括Tree和TreeItem类,可以帮助我们轻松创建...
GWT,全称为Google Web Toolkit,是一个开源的Java框架,用于构建高性能、可维护的富互联网应用程序(RIA)。GWT允许开发者使用Java语言编写客户端代码,然后通过编译器将其转换为优化过的JavaScript,以便在各种...
- 构建复杂的客户端应用程序,例如在线办公软件、地图应用等。 - 实现数据密集型和交互性强的Web应用。 #### 二、GWT的安装与配置 1. **下载GWT**: - 访问官方网址: [http://code.google.com/webtoolkit/]...
2. **配置环境变量**:右键点击“我的电脑”选择“属性”→“高级系统设置”→“环境变量”,在“系统变量”中找到`Path`变量,将其值修改为包含GWT解压路径的方式。例如,在原变量值末尾添加`;D:\gwt`(注意分号...
Gwt中文手册,GWt入门Gwt中文手册,GWt入门Gwt中文手册,GWt入门
标题 "GWT" 指的是 Google Web Toolkit,这是一个开源的Java开发框架,主要用于构建高性能、跨浏览器的富互联网应用程序(Rich Internet Applications,简称RIA)。GWT通过将Java代码编译为JavaScript,使得开发者...
这可以通过Eclipse的"Help" > "Eclipse Marketplace"菜单完成,搜索“Google Plugin for Eclipse”并按照提示进行安装。 安装GWT插件后,你需要创建一个新的GWT项目。在Eclipse中选择"File" > "New" > "Other",...
3. **安装Google Plugin SDK**:在Eclipse中,通过“Help” > “Install New Software”菜单,输入GWT插件的更新站点地址来安装。安装完成后,你可以在Eclipse的“Preferences”中看到GWT的相关设置。 4. **配置GWT...
**GWT(Google Web Toolkit)开发环境JAVA** Google Web Toolkit(GWT)是一个开放源代码的Java框架,它允许开发者使用Java语言来编写富互联网应用程序(Rich Internet Applications,RIA),并将其编译成优化的...
SmartGWT是基于Google Web Toolkit (GWT) 的一个开源框架,它为开发富互联网应用程序(RIA)提供了丰富的组件库和高级功能。SmartGWT的最新版本进一步提升了用户体验,简化了开发过程,提供了更多现代Web设计的需求...
**GWT 概述** GWT(Google Web Toolkit)是由Google开发的一款开源的JavaScript开发框架,主要用于构建高性能、跨浏览器的Web应用程序。GWT通过Java语言进行开发,并将Java代码编译成高效的JavaScript,使得开发者...
GWT,全称为Google Web Toolkit,是Google推出的一款开源JavaScript开发框架,用于构建高性能的、客户端的Web应用程序。GWT允许开发者使用Java语言编写代码,然后自动编译为优化过的JavaScript,使得开发者能够利用...
Google Web Toolkit(GWT)是Google推出的一款开源的、基于Java的Web开发框架,它允许开发者使用Java语言来编写前端应用程序。GWT-2.8.2是该SDK的一个版本,提供了最新的特性和改进,旨在简化Web应用的开发流程,...
- 在Eclipse中,右键点击项目,选择"Google" -> "GWT Compile"进行编译。编译完成后,会生成一个`war`目录,包含编译后的JavaScript和其他资源。 - 运行项目,可以选择"Eclipse" -> "Run As" -> "Web Application...