在试图上绘图
然后绘画背景网格
Rectangle r = getBounds(); g2D.setColor(Color.gray); int hlines = r.height / 8;
int vlines = r.width / 8;
for (int j = 0; j < hlines; j++) {//wjp1015
for (int i = 0; i < vlines; i++) {
g2D.drawLine(i * 8, j * 8, i * 8, j * 8);
}
}并计算出交叉点存进某个列表中.
绘制结束,绘制你要拖动的东西!
在鼠标释放的时候,得到当前鼠标的坐标,判断距离最近的交叉点
然后讲你托放的东西move道交叉点上,即可!
然后绘画背景网格
Rectangle r = getBounds(); g2D.setColor(Color.gray); int hlines = r.height / 8;
int vlines = r.width / 8;
for (int j = 0; j < hlines; j++) {//wjp1015
for (int i = 0; i < vlines; i++) {
g2D.drawLine(i * 8, j * 8, i * 8, j * 8);
}
}并计算出交叉点存进某个列表中.
绘制结束,绘制你要拖动的东西!
在鼠标释放的时候,得到当前鼠标的坐标,判断距离最近的交叉点
然后讲你托放的东西move道交叉点上,即可!
解决方案 »
- 有个问题想请教,关于socket
- 关于Java io 中编码解码的问题
- draw2d中如何弹出对话框
- 请问JAVA是解释执行的吗?所谓解释执行是什么?JSP的解释执行和JAVA一样的道理吗?什么是运行期?
- 求救,这个错误什么意思?
- 小妹初学Java!各位师哥给介绍几本好书啊!
- 请教int转换成字符串的一个问题
- 哪儿有侯捷翻译的《thinking in java2》中文版下载
- 高分!! Where can i find open-source IP v6 Stack Java implementation
- awt中的高级事件(语意事件)和低级事件的区别
- 请问谁有俄罗斯方块的源代码!
- 对于java的Interface,我突然想到的,请大家看看
那么在move的过程中,你要repaint(rectangle)你棋子的区域
以显示棋子拖动的过程!
是不是想作个围棋呀!
作个类。每个棋子对应一个对象。int i, int j, int k, int l 控制位置。if(m_bPressed)
{
g.setColor(Color.gray);
g.drawLine(0, 0, i - 1, 0);
g.drawLine(0, 0, 0, j - 1);
}
if(m_bPressed)
{
g.setColor(Color.white);
g.drawLine(0, j - 1, i - 1, j - 1);
g.drawLine(i - 1, 0, i - 1, j - 1);
}
画出他的阴影。
mouseDrag(Event event, int i, int j)
mouseExit(Event event, int i, int j)最麻烦的是控制每个对象能到的区域。那的精确计算了。
这样移动规则根据这个二维数组制定
以马为例
马的坐标(a,b)
可以达到的地方是(a+ - 2,b+ -1)和(a+ -1,b+ -2)