java swing 控件拖动_java swing中实现拖拽功能示例
java实现拖拽示例
Swing中实现拖拽功能,代码很简单,都有注释,自己看,运行效果如下图:
package com;
import java.awt.*;import java.awt.datatransfer.DataFlavor;import java.awt.dnd.DnDConstants;import java.awt.dnd.DropTarget;import java.awt.dnd.DropTargetAdapter;import java.awt.dnd.DropTargetDropEvent;import java.io.File;import java.util.List;import javax.swing.*;
/** * 最简单的Java拖拽代码示例 * @author 刘显安 * 2013年1月24日 */public class DragTest extends JFrame{ JPanel panel;//要接受拖拽的面板 public DragTest() { panel = new JPanel(); panel.setBackground(Color.YELLOW); getContentPane().add(panel, BorderLayout.CENTER); setSize(500, 200); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocation(400, 200); setTitle("最简单的拖拽示例:拖拽文件到下面(20130124)"); drag();//启用拖拽 } public static void main(String[] args) throws Exception { UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");//设置皮肤 new DragTest().setVisible(true);; } public void drag()//定义的拖拽方法 { //panel表示要接受拖拽的控件 new DropTarget(panel, DnDConstants.ACTION_COPY_OR_MOVE, new DropTargetAdapter() { @Override public void drop(DropTargetDropEvent dtde)//重写适配器的drop方法 { try { if (dtde.isDataFlavorSupported(DataFlavor.javaFileListFlavor))//如果拖入的文件格式受支持 { dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);//接收拖拽来的数据 List list = (List) (dtde.getTransferable().getTransferData(DataFlavor.javaFileListFlavor)); String temp=""; for(File file:list) temp+=file.getAbsolutePath()+";\n"; JOptionPane.showMessageDialog(null, temp); dtde.dropComplete(true);//指示拖拽操作已完成 } else { dtde.rejectDrop();//否则拒绝拖拽来的数据 } } catch (Exception e) { e.printStackTrace(); } } }); }}
java swing 控件拖动_java swing中实现拖拽功能示例相关推荐
- java swing控件大全_java swing 组件大全(新手快进)
import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.tree.*; import ...
- android 当前置顶的控件,Android利用RecyclerView实现全选、置顶和拖拽功能示例
前言 今天给大家分享是如何在RecyclerView实现全选,ItemTouchHelper实现侧滑删除,拖拽功能.比较基础.关于RecyclerView的强大,就不多说了.在Android L SD ...
- appium java 时间控件_在 Appium 中快速单击控件的变通方法
为什么需要快速点击控件 在我要测试的APP中,有一个名曰"秘密花园"的玩意儿,里面可以切换 正式.灰度.测试 环境:因为不想让用户随便就可以点进去切环境,开发同学在正常界面的某个位 ...
- java改变变量编码方式_Java 8中的5个功能将改变您的编码方式
java改变变量编码方式 Java 8在JVM和语言级别都包含了一些非常令人兴奋的功能. 尽管最初为该发行版设想的某些功能已扩展到第9版,或已推出第9版,但实际上有数十个新功能. 许多新添加的内容在编 ...
- DevExpress控件学习之GridControl的Row拖拽
GridControl中包括了GridView,所以在工具栏是无法直接找到GridView控件的 需要实现两个控件的四个事件,分别是源控件和目标控件,源控件即为某GridControl实例的子视图-& ...
- vue中实现拖拽功能
自定义的全局指令 提示:拖拽指令 文章目录 自定义的全局指令 一.拖拽 1.自定义拖拽指令 2.页面挂载 3.css样式 提示:以下是本篇文章正文内容,下面案例可供参考 一.拖拽 1.自定义拖拽指令 ...
- 如何在vue中实现拖拽功能
HTML5 drag & drop 拖拽与拖放 想要实现该功能,先了解一下H5中的drag和drop这2个概念.
- java的简单数字时钟_Java实现的简单数字时钟功能示例
本文实例讲述了java实现的简单数字时钟功能.分享给大家供大家参考,具体如下: 应用名称:java数字时钟 用到的知识:java gui编程,线程 开发环境:win8+eclipse+jdk1.8 功 ...
- java socket 传输压缩文件_java基于socket传输zip文件功能示例
本文实例讲述了java基于socket传输zip文件的方法.分享给大家供大家参考,具体如下: 服务器端程序: import java.io.*; import java.net.*; import j ...
最新文章
- 由各大企业移除MongoDB,回看关系模型与文档模型之争
- pip install 默认安装路径修改
- [unreal4入门系列之三] 初探UE4安装文件目录结构
- 电脑断网也难逃黑客攻破!风扇在转,手机放桌上,数据就被隔空窃取了
- ALV分类合计功能实现
- maven 常用的插件
- P4062 [Code+#1]Yazid 的新生舞会(线段树做法)
- 【C/C++开发】C++11 并发指南二(std::thread 详解)
- mysql管理应用_如何在PHP和MySQL中制作出色的库存管理应用程序
- 数据/方法论固然重要,但人为分析更有价值!
- $.ajax(0,jQuery Ajax显示0而不是Array(jQuery Ajax showing 0 instead of Array)
- Django模型(model)系统
- Spring IOC注入详解
- win7旗舰版上装VS2010错误(提示:miicrosoft 应用程序报告[安装失败])
- 用python计算有效前沿_【投资组合理论】Python绘制上证50成分股有效前沿和CML
- ff7重制版青魔法_《FF7重制》敌方招式获取方式与效果
- 如何进行系统的架构设计?
- R语言与点估计学习笔记(矩估计与MLE)
- VFS(virtual File System) 虚拟文件系统
- 使用frp内网穿透,用windows远程桌面连接