- 浏览: 3099964 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (372)
- diy (4)
- linux (19)
- 杂项 (30)
- Swing (21)
- Java2D (21)
- Java3D (5)
- JavaIO (9)
- Java通讯 (5)
- Java设计模式 (3)
- Java多媒体 (0)
- Java算法 (7)
- Spring&EJB (29)
- Javaoffice (4)
- web前端 (23)
- javascript (1)
- php基础 (1)
- eclipse (3)
- 网站相关 (3)
- Apache (4)
- seo (12)
- db (28)
- server (3)
- api (4)
- 异常 (12)
- 计算机网络词汇表 (3)
- 随想录 (52)
- 收藏 (17)
- 犹太人的智慧 (3)
- 多线程 (1)
- jfreechart (7)
- Test (1)
- SorLib (30)
- ruby on rails (1)
最新评论
-
houyutao:
二三四都是错的空字符串也被匹配,*应该改成+
Java中判断字符串是否为数字的五种方法 -
mingyun:
但是 java.util.ArrayList 实现了 remo ...
java.lang.UnsupportedOperationException 解决方案 -
mingyun:
1.因为 Arrays.asList 返回的是 Arrays内 ...
java.lang.UnsupportedOperationException 解决方案 -
leolu007:
用java8新特性String testStr = " ...
java.lang.UnsupportedOperationException 解决方案 -
zhaohuaxishiwzw:
我之前所在的项目就是日本一家证券公司的项目。完全使用的是j2e ...
抛弃EJB(EJB2.0,EJB3.0,EJB4.0)
Swing的拖拽貌似挺复杂的效果,其实实现起来还是很容易的。只需要对控件实现DropTargetListener接口即可。
运行效果如下图:
拖拽文件到该空间后,我们获得文件基本信息,并显示,更具体的显示效果您可以自己去控制。拖拽文件后的效果:
程序完成代码:
运行效果如下图:
拖拽文件到该空间后,我们获得文件基本信息,并显示,更具体的显示效果您可以自己去控制。拖拽文件后的效果:
程序完成代码:
package com.zakisoft.drug; /** * @author zakisoft.com */ import java.awt.Container; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.Transferable; import java.awt.dnd.DnDConstants; import java.awt.dnd.DropTarget; import java.awt.dnd.DropTargetDragEvent; import java.awt.dnd.DropTargetDropEvent; import java.awt.dnd.DropTargetEvent; import java.awt.dnd.DropTargetListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.File; import java.io.InputStream; import java.util.Iterator; import java.util.List; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTextArea; public class DropTargetTest { private DropTargetTest() { JFrame frame = new DropTargetFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public static void main(String[] args) { JFrame.setDefaultLookAndFeelDecorated(true); new DropTargetTest(); } } class DropTargetFrame extends JFrame { private static final long serialVersionUID = 6197629178772816152L; public DropTargetFrame() { setTitle("Swing拖拽的例子 Zakisoft.com"); setSize(600, 400); setLocationRelativeTo(getOwner()); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); Container contentPane = getContentPane(); JTextArea textArea = new JTextArea( "请拖拽文件到该区域.\n "); new DropTarget(textArea, new TextDropTargetListener(textArea)); contentPane.add(new JScrollPane(textArea), "Center"); } } class TextDropTargetListener implements DropTargetListener { public TextDropTargetListener(JTextArea ta) { textArea = ta; } public void dragEnter(DropTargetDragEvent event) { int a = event.getDropAction(); if ((a & DnDConstants.ACTION_COPY) != 0) textArea.append("ACTION_COPY\n "); if ((a & DnDConstants.ACTION_MOVE) != 0) textArea.append("ACTION_MOVE\n "); if ((a & DnDConstants.ACTION_LINK) != 0) textArea.append("ACTION_LINK\n "); if (!isDragAcceptable(event)) { event.rejectDrag(); return; } } public void dragExit(DropTargetEvent event) { } public void dragOver(DropTargetDragEvent event) { } public void dropActionChanged(DropTargetDragEvent event) { if (!isDragAcceptable(event)) { event.rejectDrag(); return; } } public void drop(DropTargetDropEvent event) { if (!isDropAcceptable(event)) { event.rejectDrop(); return; } event.acceptDrop(DnDConstants.ACTION_COPY); Transferable transferable = event.getTransferable(); DataFlavor[] flavors = transferable.getTransferDataFlavors(); for (int i = 0; i < flavors.length; i++) { DataFlavor d = flavors[i]; textArea.append("MIME type= " + d.getMimeType() + "\n "); try { if (d.equals(DataFlavor.javaFileListFlavor)) { List<?> fileList = (List<?>) transferable .getTransferData(d); Iterator<?> iterator = fileList.iterator(); while (iterator.hasNext()) { File f = (File) iterator.next(); textArea.append(f + "\n "); } } else if (d.equals(DataFlavor.stringFlavor)) { String s = (String) transferable.getTransferData(d); textArea.append(s + "\n "); } else if (d.isMimeTypeEqual("text/plain ")) { String charset = d.getParameter("charset "); InputStream in = (InputStream) transferable .getTransferData(d); boolean more = true; int ch; if (charset.equals("ascii ")) { do { ch = in.read(); if (ch != 0 && ch != -1) textArea.append(" " + (char) ch); else more = false; } while (more); } else if (charset.equals("unicode ")) { boolean littleEndian = true; do { ch = in.read(); int ch2 = in.read(); if (ch != -1 && littleEndian) ch = (ch & 0xFF) | ((ch2 & 0xFF) << 8); if (ch == 0xFFFE) littleEndian = false; else if (ch != 0 && ch != -1) textArea.append(" " + (char) ch); else more = false; } while (more); } textArea.append("\n "); } } catch (Exception e) { textArea.append("Error: " + e + "\n "); } } event.dropComplete(true); } public boolean isDragAcceptable(DropTargetDragEvent event) { return (event.getDropAction() & DnDConstants.ACTION_COPY_OR_MOVE) != 0; } public boolean isDropAcceptable(DropTargetDropEvent event) { return (event.getDropAction() & DnDConstants.ACTION_COPY_OR_MOVE) != 0; } private JTextArea textArea; }
发表评论
-
JFileChooser 只选(显示)文件夹
2012-06-29 11:17 3804小常识,就是总是忘,干脆整理下: JFileChooser f ... -
Swing免费皮肤Substance的使用
2010-10-25 16:22 22220关键词:Swing换肤,Substance,免费皮肤 Swi ... -
Swing 窗体关闭对话框提示
2010-10-20 17:56 6829关键词:Swing,关闭窗体,对话框提示 Swing关闭窗体 ... -
JTable表头排序的两种方法
2010-10-13 09:46 16566关键词:JTable,表头排序,线程安全 在Java6以前, ... -
基于Swing的图片倒影特效
2010-10-11 17:34 3707关键字:Swing,倒影特效,Graphics2D,Gradi ... -
怎样学习Swing
2010-09-27 16:36 3511Sun网站上的Java Tutorial就非常好,非常适合。它 ... -
Swing的第一推动力(转载)
2010-09-27 16:32 1599转载自[url]http://blog.sina. ... -
How to Write a Custom Swing Component
2010-09-27 16:29 2510When you hear comparisons betwe ... -
Swing页面属性的设置顺序
2010-09-15 15:35 4715这是一个细节问题,但 ... -
paint和paintComponent方法的关系
2010-09-15 14:12 15635关键词:swing,paint,paintComponent, ... -
SwingUtilities中invokeLater,invokeAndWait的区别和作用
2010-09-02 17:28 2933invokeLater,invokeAndWait是专门给Sw ... -
Swing控件(JLabel,JButton....)设置字体和大小
2010-09-02 16:57 19835关键字:Swing控件,JButton,JLabel,字体,大 ... -
Java 拖动Swing组件和图片
2010-08-17 14:07 14406在Swing中拖动一个组件或者图片,我们抛开定位布局不说,是件 ... -
SwingUtilities.convertPoint 方法的作用
2010-08-17 13:38 6705SwingUtilities类是Swing组件 ... -
JTable 行 列 单元格 操作小结
2010-07-15 10:11 11028一.创建表格 1) 调用无参构造函数. JTable tabl ... -
JTable 保存单元格内容
2010-07-14 17:25 4158在开发过程中遇到这样一个问题,我编辑JTable里的内容,编辑 ... -
Swing, JTree拖拽的例子
2010-06-10 16:47 6169一个Java(JTree)拖拽的例子,其核心思想还是去实现Ja ... -
Swing JTable工厂(table4j)
2010-06-07 16:36 5186因为Swing提供的JTable用 ... -
Java Swing Border(Swing 边框) 归纳
2010-05-27 12:32 25676对Swing Border的一个小总结: 使用方法: Titl ... -
JFrame打开居中和相关设置
2010-05-13 15:51 7112对于JFrame,在界面初始化完成时,加入以下代码: //设置 ...
相关推荐
swing组件透明拖动,透明效果可以设置
swing是一款可以容器中的卡片元素拖拽到容器外的js拖拽插件。该拖拽插件在拖动卡片元素到容器外后,放下卡片时有很酷的卡片弹性左右摇摆效果。如果拖动距离不够,卡片将被拉回容器中。
swing是一款可以容器中的卡片元素拖拽到容器外的js拖拽插件。该拖拽插件在拖动卡片元素到容器外后,放下卡片时有很酷的卡片弹性左右摇摆效果。如果拖动距离不够,卡片将被拉回容器中。
博文链接:https://xiancoder.iteye.com/blog/75830
这个存储库由几个定制的java swing组件组成,可以在任何java项目中导入,可以在netbeans的swing托盘中导入,可以拖放到swing ui中以方便高效使用。这些组件添加到th ui 之美,因为其中一些涉及动画效果和表示数据的...
JavaFX则是Java SE 8之后引入的新一代GUI工具包,它更加现代化和灵活,支持丰富的特效和动画效果。 无论你选择使用Swing还是JavaFX,Java提供了可视化的开发工具(如NetBeans和Eclipse)和丰富的文档和教程,以帮助...
使用JAVA SWing实现鼠标点击拖拽绘制图,自行设置边权,自行设置源点,动态演示Dijkstra求单源最短路的过程。成品效果见https://blog.csdn.net/qq_44643644/article/details/118517988
还在为基于C/S模式,使用GUI的Swing组件开发的界面排版烦恼吗,快使用可视化图形界面吧,至少各个组件的位置可以通过直接拖拽来设置,字体,大小位置,颜色等属性可以直接在界面上操作,而不用再通过写代码控制,...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰效果 Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、...
Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰效果 Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、...