资源简介
一个java swing 实现的拖拽组件 交换位置的小程序
代码片段和文件信息
package com.teraee.tcat.util;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.EventQueue;
import java.awt.Color;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.HashMap;
import java.util.Map;
import javax.swing.BorderFactory;
import javax.swing.Jframe;
import javax.swing.JPanel;
public class TestDrag extends Jframe {
private JPanel contentPane;
//坐标数组
public static int[][] seat = {{1010}{15010}{10150}{150150}};
//记录坐标对应的组件
public static Map seatPanel = new HashMap();
public static JPanel[] panels = new JPanel[4] ;
//查找最近的区域坐标,返回编号
public static int getbest(int x int y){
int indexbest = 0;
int modbest = 0;
int modtmp = 0;
int indextmp = 0;
System.out.println(“x:“+x + “ y:“ + y);
for(int i = 0; i < 4; i++){
if(i==0){
modbest = Math.abs(x-seat[i][0]) + Math.abs(y-seat[i][1]);
System.out.println(“modbest:“+modbest );
indexbest = 0;
}else{
modtmp = Math.abs(x-seat[i][0]) + Math.abs(y-seat[i][1]);
System.out.println(“modtmp:“+modtmp );
indextmp = i;
if(modtmp < modbest){
modbest = modtmp;
indexbest = indextmp;
System.out.println(“modbest:“+modbest + “ indexbest:“ + indextmp);
}
}
}
return indexbest;
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
TestDrag frame = new TestDrag();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public TestDrag() {
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
setSize(310 330);
setLocationRelativeTo(null);
contentPane = new JPanel();
contentPane.setLayout(new BorderLayout());
add(contentPane);
JPanel panel = new JPanel();
contentPane.add(panel BorderLayout.CENTER);
panel.setBorder(BorderFactory.createLineBorder(Color.orange 2));
panel.setLayout(null);
panels[0] = new JPanel();
panels[0].setBackground(Color.BLUE);
panels[0].setBounds(10 10 130 130);
panel.add(panels[0]);
seatPanel.put(“0“ “0“);
panels[1] = new JPanel();
panels[1].setBackground(Color.LIGHT_GRAY);
panels[1].setBounds(150 10 130 130);
panel.add(panels[1]);
seatPanel.put(“1“ “1“);
panels[2] = new JPanel();
- 上一篇:mail.jar和activation.jar
- 下一篇:jstl 1.2 jar
相关资源
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
- 操作系统作业 (pv,作业管理,等5个
- 基于C/S架构考试系统(Java)
- java access 仓库管理系统 源码
- 一元多项式相加 java实现
评论
共有 条评论