- 浏览: 371412 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (148)
- java (89)
- flex (7)
- sns (3)
- jquery mobile gwt html5 (1)
- VirtualBox Centos 安装 (2)
- tomcat (1)
- nginx (2)
- centOS (7)
- memcache (2)
- hadoop (3)
- hbase (3)
- install (1)
- cloudera (3)
- tools (0)
- gen code (0)
- Mysql (2)
- KinderEditor (1)
- flash chart (1)
- ntsysv (1)
- hibernate search (2)
- compass (1)
- lucence (2)
- hibernate (1)
- jboss cache (0)
- 二级缓存 (1)
- maven (1)
- debian (1)
- go (1)
- golang (2)
- html5 (1)
最新评论
-
llh1985:
wave牛人~~求联系~~~邮箱llh1985@163.com ...
GWT Wave 开源代码运行跑通分析(1) -
zhengliming123:
[img][img][*][*][/flash][*]|[/i ...
hibernate Search 学习研究 附件是maven工程 -
di1984HIT:
写得很嗯好啊。
CentOS 安装 hadoop hbase 使用 cloudera 版本。(一) -
itfanr:
楼主写的真好 本地godoc
Golang 1.0 文档使用。godoc ,go 命令 学习 ,本地运行 gotour -
phe441:
灰常感谢楼主,爱死你了
URL rewrite 3.2 jar 和 文档 pdf 下载
想研究下拖拽的效果.
http://code.google.com/p/gwt-dnd/downloads/list
这个是GWT拖拽的库.就一个jar文件
对应的GWT1.7进行拖拽学习.当然下载的也是1.7的jar.
GWT 1.7.0 对应 gwt-dnd-2.6.5.jar
然后放到工程里面.
下载了jar文件之后
在新建一个eclipse工程.
在module文件里面加入模块的插入.
<inherits name = 'com.allen_sauer.gwt.dnd.gwt-dnd' />
然后启动才可以编译通过.
接下来到官方网站找个列子改改..有写东西不是太明白.
public void onModuleLoad() { // set uncaught exception handler GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() { public void onUncaughtException(Throwable throwable) { String text = "Uncaught exception: "; while (throwable != null) { StackTraceElement[] stackTraceElements = throwable .getStackTrace(); text += throwable.toString() + "\n"; for (int i = 0; i < stackTraceElements.length; i++) { text += " at " + stackTraceElements[i] + "\n"; } throwable = throwable.getCause(); if (throwable != null) { text += "Caused by: "; } } DialogBox dialogBox = new DialogBox(true); DOM.setStyleAttribute(dialogBox.getElement(), "backgroundColor", "#ABCDEF"); System.err.print(text); text = text.replaceAll(" ", " "); dialogBox.setHTML("<pre>" + text + "</pre>"); dialogBox.center(); } }); // use a deferred command so that the handler catches onModuleLoad2() // exceptions DeferredCommand.addCommand(new Command() { public void execute() { onModuleLoad2(); } }); }
在GWT的组件初始化了之前做了点操作..
找到了官方网站的一个有表格拖拽的例子.
进行修改了下.PuzzleExample这个类.
然后
private static final int ROWS = 10; private static final int COLUMNS = 9; private static final String CSS_DEMO_PUZZLE_CELL = "demo-PuzzleExample-cell"; private static final String CSS_DEMO_PUZZLE_EXAMPLE = "demo-PuzzleExample"; private static final String CSS_DEMO_PUZZLE_TABLE = "demo-PuzzleExample-table"; private static final int IMAGE_HEIGHT = 58; private static final int IMAGE_WIDTH = 65; private PickupDragController dragController; public PuzzleExample() { addStyleName(CSS_DEMO_PUZZLE_EXAMPLE); // use the boundary panel as this composite's widget AbsolutePanel boundaryPanel = new AbsolutePanel(); boundaryPanel.setPixelSize(800, 900); setWidget(boundaryPanel); // initialize our flex table FlexTable flexTable = new FlexTable(); flexTable.setStyleName(CSS_DEMO_PUZZLE_TABLE);/*显示flexTable的背景颜色添加一个红色的边框.*/ boundaryPanel.add(flexTable, 50, 20); flexTable.setBorderWidth(0); flexTable.setCellPadding(0); flexTable.setCellSpacing(0); // initialize our drag controller dragController = new PickupDragController(boundaryPanel, false); // dragController.addDragHandler(demoDragHandler); dragController.setBehaviorMultipleSelection(false); // create our grid String[] strRow_1 = {"车","马","相","士","将","士","相","马","车"}; for (int i = 0; i < ROWS ; i++) { for (int j = 0; j < COLUMNS; j++) { // create a simple panel drop target for the current cell SimplePanel simplePanel = new SimplePanel(); simplePanel.setPixelSize(IMAGE_WIDTH, IMAGE_HEIGHT); flexTable.setWidget(i, j, simplePanel); //flexTable.getCellFormatter().setStyleName(i, j, // CSS_DEMO_PUZZLE_CELL); // place a pumpkin in each panel in the cells in the first // column if (i == 0) { simplePanel.setWidget(createBlackButton(strRow_1[j])); } if(i == 2 && ( j == 1 || j == 7)) { simplePanel.setWidget(createBlackButton("炮")); } if(i == 3 && ( j == 0 || j == 2 || j == 4 || j == 6 || j == 8)) { simplePanel.setWidget(createBlackButton("兵")); } if(i == 6 && ( j == 0 || j == 2 || j == 4 || j == 6 || j == 8)) { simplePanel.setWidget(createRedButton("兵")); } if(i == 7 && ( j == 1 || j == 7)) { simplePanel.setWidget(createRedButton("炮")); } if (i == 9) { simplePanel.setWidget(createRedButton(strRow_1[j])); } // instantiate a drop controller of the panel in the current // cell SetWidgetDropController dropController = new SetWidgetDropController( simplePanel); dragController.registerDropController(dropController); } } } protected Widget createRedButton(String name) { Button button = new Button(name); button.setWidth("63px"); button.setHeight("56px"); button.setStyleName("button-with-red"); dragController.makeDraggable(button); return button; } protected Widget createBlackButton(String name) { Button button = new Button(name); button.setWidth("63px"); button.setHeight("56px"); button.setStyleName("button-with-black"); dragController.makeDraggable(button); return button; }
将棋子进行初始化.我用的是button当棋子..其中分红方和黑方两个..
.demo-PuzzleExample-table { border: 1px solid red; background-image: url("table-bk-border.bmp"); } .button-with-red { background-image: url("button.GIF"); border: 0px; font: bold ; color: red; } .button-with-black { background-image: url("button.GIF"); border: 0px; font: bold ; color: black; } DIV.dragdrop-dropTarget-engage { background: #BCDEFF; /* lighter blue */ } /* ------------ Main Boundary Panel ------------ */ DIV.demo-main-boundary-panel { background: #F8F8F8; /* light gray */ border: 1px solid blue; }
添加几个样式.java代码里面还是用样式的名字比较好.然后在页面单独添加样式.
有关问题就是表格的边框.
棋子是在表格的横线上面的.而边框是套在表格里面的.
我先将表格做为一个图片.给一个border=1
截一个图.然后将这个图往下,往右移动半个格.这样看背景图片一放上去.就像是棋子在表格的边框上面了.
然后在修改 楚河 汉界. 添加 炮和兵放的 位置..
这样棋盘就有了.画的不怎么好看..还需要在修改下.
画 的棋盘...
页面初始化的样子..
棋子移动的样子.
现在棋子刚刚可以移动.并且棋子不可以重叠..
还没有实现 马走日 象走田的 步数限制.而且还不能记录走的步数..
只是刚刚把棋盘画好..
哈.有兴趣的可以一起研究下..下一步记录象棋的步子..让两个人在浏览器里面下象棋.
附件是代码.
先传到GOOGLE的服务器上面跑跑.
欢迎访问:
http://webchinesechess.appspot.com/
貌似在IE里面 左面的棋盘有点下移.
发表评论
-
在CSDN上面也开通了博客
2013-02-27 22:41 906在CSDN上面也开通了博客 CSDN 现在发布文章 ... -
resin 服务器学习 配置 单点和 集群
2011-12-08 00:45 2064使用的 resin 4 服务器 ... -
CentOS 安装 Memcache 服务器. java 做客户端.
2011-11-07 18:35 37051,下载安装第三方源: CentOS 6 或 R ... -
CentOS rpm 安装 java 环境 tomcat nginx.
2011-11-03 19:17 7494首先测试更新. yum update ... -
android 源文件 zip包下载.地址
2011-06-20 15:19 1877android 源文件 zip包下载. 网络上面提供了 ... -
读取 jpa 的配置文件.添加自己的属性.
2011-06-15 16:03 1795package com.freewebsys.sns.c ... -
构建富客户端程序 GWT2.3 + Guice3.0 + hibernateJPA 程序代码
2011-05-05 11:44 1596构建富客户端程序 GWT2.3 + Guice3.0 + ... -
Guice 3.0 学习 persist jpa
2011-03-18 17:39 1536guice 3.0 的 persist 实现 使用的是 ... -
自己弄 开源 CMS 内容发布系统 主要表设计。
2011-03-10 11:34 3838--CMS栏目表 CREATE TABLE ... -
坚信 Debian是比Ubuntu更稳定的操作系统
2011-03-07 14:28 2304坚信 Debian是比Ubuntu更稳定的操作系统 自 ... -
eclipse 3.6 sp2 减肥记录
2011-03-04 09:46 1668喜欢 eclipse 但是 发现 eclipse 的功能很多 ... -
记录 2010 01 12 开始 给 自己 2 年 的时间 去弄 一个 gwt sns
2011-01-13 12:57 1313记录 2010 01 12 开始 给 自己 2 ... -
mac os x86 下 intel 无限驱动下载
2011-01-09 10:45 1413是在 googlecode 的项目 http://co ... -
Macos 下面 开源软件 下载
2011-01-06 16:06 1893macos 常用 软件 下载 macos 官方网站下载 ... -
Ubuntu 更新文件 桌面 菜单丢失, 打算 换 mac os
2011-01-04 11:32 2023ubuntu 是 2009 年 安装 ... -
做 一个 sns 的项目 考虑 使用 GWT 做 前台 后台 spring hibernate 如何 ?
2010-12-27 12:48 1466做 一个 sns 的项目 考虑 使用 GWT 做 前台 后台 ... -
Goolge appengine 又可以用了。高兴啊。。
2010-12-15 09:37 739突然想访问下自己的应用。 发现 自己的 appengi ... -
将google app engine 进行 本地化 可写文件 创建线程 去除白名单
2010-12-10 17:36 1912最近 看到 appgeng 被 ... -
设计 一个 oa 当中 的日历显示 跳转 上月 下月
2010-12-01 13:36 1350主要就是利用 java的Calendar 类 ... -
设计实现 一个 基于extjs2.0 做皮肤的 struts2 样式
2010-11-29 14:37 1815想法在 一年前 产生的。 首先使用 extjs2.0 ...
相关推荐
1. **GWT模块系统**:GWT应用是基于模块化的,每个模块对应一个`.gwt.xml`配置文件,定义了类路径、依赖和编译设置。`gwt-servlet-2.3.0.jar`包含了处理这些模块请求的逻辑。 2. **RPC通信机制**:GWT使用Remote ...
gwt-benchmark-viewer.jar
1. **Java到JavaScript的编译器**:GWT的亮点在于它的编译器,它可以将Java源代码转换成优化过的JavaScript,这样开发者就可以使用熟悉的Java语言进行前端开发,而无需深入学习JavaScript的复杂性。 2. **Widget库*...
1. **Java编程语言支持**:GWT的核心优势在于它提供了用Java编写前端代码的能力。这使得开发者能够利用Java的面向对象特性和强大的类库,同时避免了JavaScript语法的复杂性。 2. **编译器优化**:GWT的编译器会将...
gwt-servlet-1.4.61.jar
the Gwt Developer Plugin For Firefox
Manning.GWT.in.Practice.Apr.2008
1. **GWT入门**:介绍GWT的基本概念、工作原理以及环境配置,包括安装SDK、创建第一个GWT项目和理解模块化系统。 2. **Java到JavaScript的编译**:讲解GWT如何将Java代码转换为高效的JavaScript,包括编译过程、...
gwt-dev-windows.jar 大小:9.60 MB
标题 "Packt.Google.App.Engine.Java.and.GWT.Application.Development.Source.Code" 暗示了这是一个关于使用Java和GWT在Google App Engine上开发应用程序的源代码包。这为我们提供了几个关键知识点: 1. **Google ...
gwt-windows-1.7.1.zip samplesgwt-windows-1.7.1.zip samplesgwt-windows-1.7.1.zip samplesgwt-windows-1.7.1.zip samples
GWT in action(2007.7).part1.rar
in.cypal.studio.gwt.samples_1.0.0.200808282244.jar
in.cypal.studio.gwt.core_1.0.0.200808282244.jar
atmosphere-gwt-client-1.1.0.rc1.jar
atmosphere-gwt-client-1.1.0.beta1.jar
atmosphere-gwt-server-1.1.0.beta1.jar
atmosphere-gwt-server-1.1.0.rc1.jar
atmosphere-gwt-extra-1.1.0.rc1.jar