精华内容
下载资源
问答
  • 控件都实现了鼠标拖拽、放大、缩小 功能。 右键可以更改生成java代码的对象名。 双击控件是修改控件的JLabel名称。 生成java代码时,按Run按钮即可,会生成两个文件,一个是.java文件,另一个是.xml文件,是用来下一次...
  • 控件都实现了鼠标拖拽、放大、缩小 功能。 右键可以更改生成java代码的对象名。 双击控件是修改控件的JLabel名称。 生成java代码时,按Run按钮即可,会生成两个文件,一个是.java文件,另一个是.xml文件,是用来下一次...

    这是程序界面,右边的JDialog算是工具栏吧,有文本框,密码框,按钮…等,不过也是部分控件,最后一个是JPanel,没有做,让大家自己去完成吧。
    控件都实现了鼠标拖拽、放大、缩小 功能。
    右键可以更改生成java代码的对象名。
    双击控件是修改控件的JLabel名称。
    生成java代码时,按Run按钮即可,会生成两个文件,一个是.java文件,另一个是.xml文件,是用来下一次继续编辑布局使用,具体使用方法是–右边的工具栏的菜单栏那,File—open—找到.xml文件即可

    来先看个动图

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    此处已经生成了ui代码
    在这里插入图片描述
    在这里插入图片描述
    xml文件-记录了当时的布局
    重新来打开文件
    在这里插入图片描述

    在这里插入图片描述
    其实程序有很多可以改进的地方,我也只是做着玩玩,没有深究,如果大家有兴趣,再添加几个控件,将JPanel也实现了,可以让控件放入JPanel中,JPanel再放入JPanel中,那就好玩了,菜单栏的控件我没做,哈哈,复杂…
    来,上源代码!
    源码下载地址:http://pan.baidu.com/s/1qYnEg6S
    一个jar包—java -jar mfc.jar运行
    一个项目代码–

    展开全文
  • 拖拽控件java

    2021-02-26 18:14:40
    Button vv = new Button("vvvv");DragSource.getDefaultDragSource().createDefaultDragGestureRecognizer(vv, DnDConstants.ACTION_MOVE, new DragGestureListener(){public void dragGestureRecognized(DragGestur...

    Button vv = new Button("vvvv");

    DragSource.getDefaultDragSource().createDefaultDragGestureRecognizer(vv, DnDConstants.ACTION_MOVE, new DragGestureListener(){

    public void dragGestureRecognized(DragGestureEvent ee) {

    ee.startDrag(DragSource.DefaultMoveDrop,Toolkit.getDefaultToolkit().getSystemClipboard().getContents(this),new DragSourceListener(){

    public void dragDropEnd(DragSourceDropEvent dragsourcedropevent) {

    System.out.println("vvdragDropEnd");

    }

    public void dragEnter(DragSourceDragEvent dragsourcedragevent) {

    System.out.println("vvdragEnter");

    }

    public void dragExit(DragSourceEvent dragsourceevent) {

    System.out.println("vvdragExit");

    }

    public void dragOver(DragSourceDragEvent dragsourcedragevent) {

    System.out.println("vvdragOver");

    }

    public void dropActionChanged(DragSourceDragEvent dragsourcedragevent) {

    System.out.println("vvdropActionChanged");

    }});

    }});

    ///

    Button b= new Button("bbbbb");

    new DropTarget(b,new DropTargetListener(){

    public void dragEnter(DropTargetDragEvent droptargetdragevent) {

    System.out.println("bbdragEnter");

    }

    public void dragExit(DropTargetEvent droptargetevent) {

    System.out.println("bbdragExit");

    }

    public void dragOver(DropTargetDragEvent droptargetdragevent) {

    System.out.println("bbdragOver");

    try {

    System.out.println(droptargetdragevent.getTransferable().getTransferData(DataFlavor.stringFlavor));

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    public void drop(DropTargetDropEvent droptargetdropevent) {

    System.out.println("bbdrop");

    }

    public void dropActionChanged(DropTargetDragEvent droptargetdragevent) {

    System.out.println("bbdropActionChanged");

    }});

    展开全文
  • java实现拖拽示例 Swing中实现拖拽功能,代码很简单,都有注释,自己看,运行效果如下图:package com;import java.awt.*;import java.awt.datatransfer.DataFlavor;import java.awt.dnd.DnDConstants;import java....

    java实现拖拽示例

    431c9f7319ae0a0860e6dfbc055319a8.png

    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();                }            }        });    }}

    展开全文
  • 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 javax.swing.BorderFac...

    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 javax.swing.BorderFactory;

    import javax.swing.JFrame;

    import javax.swing.JPanel;

    public class DraggedTest extends JFrame {

    private JPanel contentPane;

    public static void main(String[] args) {

    EventQueue.invokeLater(new Runnable() {

    public void run() {

    try {

    DraggedTest frame = new DraggedTest();

    frame.setVisible(true);

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    });

    }

    public DraggedTest() {

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    setSize(660, 500);

    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);

    JPanel panel_1 = new JPanel();

    panel_1.setBackground(Color.GRAY);

    panel_1.setBounds(82, 85, 130, 130);

    panel.add(panel_1);

    JPanel panel_2 = new JPanel();

    panel_2.setBackground(Color.LIGHT_GRAY);

    panel_2.setBounds(261, 85, 130, 130);

    panel.add(panel_2);

    JPanel panel_3 = new JPanel();

    panel_3.setBackground(Color.MAGENTA);

    panel_3.setBounds(450, 85, 130, 130);

    panel.add(panel_3);

    JPanel panel_4 = new JPanel();

    panel_4.setBackground(Color.ORANGE);

    panel_4.setBounds(261, 285, 130, 130);

    panel.add(panel_4);

    MyListener m = new MyListener();

    panel_1.addMouseListener(m);

    panel_1.addMouseMotionListener(m);

    panel_2.addMouseListener(m);

    panel_2.addMouseMotionListener(m);

    panel_3.addMouseListener(m);

    panel_3.addMouseMotionListener(m);

    panel_4.addMouseListener(m);

    panel_4.addMouseMotionListener(m);

    }

    // 写一个类继承鼠标监听器的适配器,这样就可以免掉不用的方法。

    class MyListener extends MouseAdapter{

    //这两组x和y为鼠标点下时在屏幕的位置和拖动时所在的位置

    int newX,newY,oldX,oldY;

    //这两个坐标为组件当前的坐标

    int startX,startY;

    @Override

    public void mousePressed(MouseEvent e) {

    //此为得到事件源组件

    Component cp = (Component)e.getSource();

    //当鼠标点下的时候记录组件当前的坐标与鼠标当前在屏幕的位置

    startX = cp.getX();

    startY = cp.getY();

    oldX = e.getXOnScreen();

    oldY = e.getYOnScreen();

    }

    @Override

    public void mouseDragged(MouseEvent e) {

    Component cp = (Component)e.getSource();

    //拖动的时候记录新坐标

    newX = e.getXOnScreen();

    newY = e.getYOnScreen();

    //设置bounds,将点下时记录的组件开始坐标与鼠标拖动的距离相加

    cp.setBounds(startX+(newX - oldX), startY+(newY - oldY), cp.getWidth(), cp.getHeight());

    }

    }

    }

    展开全文
  • Java中,Frame或者JFrame自身已经实现了鼠标拖拽标题栏移动窗口的功能。但是Jframe的样式实在无法令人满意,那你又该怎么实现鼠标拖拽移动窗口的目的呢?今天我们来探讨下
  • 你在DropTargetListener中把各个DataFlavor打印处理看看:publicvoiddrop(DropTargetDropEventdtde){System.out.println("drop........................");Transferablett=dtde.getTransferable();...
  • 拖拽控件布局

    2015-07-07 12:06:52
    拖拽控件布局
  • java手写控件及事件

    千次阅读 热门讨论 2018-06-17 15:52:35
    最近准备学习了JAVA的相关知识,编程的思路和C#大致相同的,但是手写窗体的代码,接触的不多(毕竟之前都是封装好的控件,直接拖就行了!),所以就多研究了一些,和大家分享分享! JAVA手写窗体控件研究 ...
  • package yan.wen.test;...import java.awt.*;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;public class DraggedTest extends JFrame {private final JPanel panel_1;pr...
  • (java) JTree控件拖拽,拖动

    热门讨论 2009-08-19 12:22:50
    java中树形控件拖拽 拖放监听,实现各节点间的拖拽
  • 在单个应用程序而不是应用程序之间拖动组件的一种方法是使用JLayeredPane.例如,请在此处查看我的代码:dragging a jlabel around the screen扑克牌的一个例子看起来像这样(只要扑克牌图像仍然有效!):import java....
  • swing 拖动控件

    2015-02-05 20:50:07
    很简单 的一个类,示范了怎么用swing 实现拖动控件
  • 自定义可拖动的LinearLayout学习分享:一、拖动控件的实现步骤:【前提:控件在RelativeLayout中,或者在GridLayout中】1.按下图搞懂几个坐标视图宽度 view.getWidth();视图高度 view.getHeight()橘色线:view....
  • 带有菜单和可拖动控件的浮动操作按钮 [ ]( ) 将其添加到存储库末尾的root build.gradle中: allprojects { repositories { ... maven { url 'https://jitpack.io' } } } 步骤2.添加依赖项 dependencies {...
  • PlantUml是什么PlantUml是一个支持快速绘制的开源项目。...PlantUML的优点完全文本方式编辑,无需控件拖拽,自动调节图元距离,简单美观与开发平台完全无关,不受平台限制,只要有PlantUML jar包就能生成UML图...
  • 设计界面预览 总结 VvvebJs是一个非常强大的网页可视化生成构建工具,让不懂网页设计的小伙伴们也能够通过拖拽来生成美观大方的网页出来,让设计网页就像设计图片一样,VvvebJs特别适合展示型网页,甚至可以不需要...
  • Java 日历控件

    千次阅读 2018-03-07 10:33:23
    import java.awt.BasicStroke; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import java.awt.Cursor; import java.awt.Dimension; import java.awt.Font; imp...
  • 最初的Terai实现在TabbedPane中转移了选项卡,但是如果我可以从一个TabbedPane拖动到另一个,那就更好了。通过@启发汤姆的努力,我决定修改自己的代码。我添加了一些细节。例如,幽灵选项卡现在沿着选项卡式窗格滑动...
  • 如何设置java控件的位置和大小?

    千次阅读 2020-08-10 10:33:53
    如何设置java控件的位置和大小 放个控件还真麻烦啊!不好指定位置,用那三个布局管理器也根本不怎么管用啊!要是能像.NET的C#那样就好了,直接拖动安放就好了。于是我就想着,要是有个设置控件位置的函数就好了呢!...
  • ![图片说明](https://img-ask.csdn.net/upload/201801/08/1515424609_593319.png) 每一个可以拖拽到空白区,可以在空白区通过连线连成一个逻辑图,类似上图
  • 断断续续学习JAVA语言,写了一个多月数据库大作业,终于在五一过后写完了。由于第一次使用JAVA和数据库,遇到了许多问题,记录下来,以备以后查看。我使用的JAVA SE,说实话,在开发后期,觉得JAVA还是EE比较好使,...
  • JAVA UI 拖拽功能

    2021-03-13 14:53:02
    java GUI拖拽功能是很实用也相对高级一些的功能。有一小部分的GUI控件支持他们有dragEnabled属性.这些JComponent包括:javax.swing.JColorChooserjavax.swing.JFileChooserjavax.swing.JListjavax.swing.JTablejavax....
  • 在一些允许用户自定义栏目顺序的app(如:凤凰新闻、网易云音乐等),我们可以方便地拖拽列表项来完成列表的重新排序,进而完成对栏目顺序的重排。这个功能很人性化,而实现起来其实很简单(甚至都不用写什么后台代码)...
  • java可拖放的web控件

    2012-08-20 21:02:50
    几年前写的一套自定义的jsp标签 普通翻页,数组翻页,仿百度翻页 面包屑导航控件 tree控件等,可能有bug, 导入项目就能看到效果,有示例 验证码等
  • Android 拖拽控件交换位置

    千次阅读 2018-01-25 16:22:27
    距离上次写博客已快有一月,中间也动过几次写博客的心思,但却因为懒,耽搁了下来。 --萧洛  在网上搜寻了许久,实在是没有找到可用的demo,无奈只好自己写一个,鉴于...功能说明:当退拽的距离超过当前控件的一半  
  • import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import java.awt.Cursor; import java.awt.Dimension; import java.awt.FlowLayout; import java.a...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,562
精华内容 9,824
关键字:

java拖动控件

java 订阅