Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用鼠标移动画布_Java_Swt - Fatal编程技术网

Java 用鼠标移动画布

Java 用鼠标移动画布,java,swt,Java,Swt,我想通过拖放将按钮移动到帧中的任何位置。我在SWT里做不到。有人能帮我吗?我尝试了很多次,但没有找到任何侦听器。对于那些默认情况下不支持拖放的JC组件,或者您希望自定义其拖放行为的JC组件,您需要向它们传递一个新的TransferHandler。创建TransferHandler最简单的方法是实例化一个TransferHandler,并向其传递一个bean属性,或者类中get/set方法的名称(例如,text和icon是JButton的bean属性)。我们还需要一个鼠标侦听器来导出阻力 JBut

我想通过拖放将按钮移动到帧中的任何位置。我在SWT里做不到。有人能帮我吗?我尝试了很多次,但没有找到任何侦听器。

对于那些默认情况下不支持拖放的JC组件,或者您希望自定义其拖放行为的JC组件,您需要向它们传递一个新的TransferHandler。创建TransferHandler最简单的方法是实例化一个TransferHandler,并向其传递一个bean属性,或者类中get/set方法的名称(例如,text和icon是JButton的bean属性)。我们还需要一个鼠标侦听器来导出阻力

JButton button = new JButton("This is the text");
TransferHandler transfer = new TransferHandler("text");

//the JButton can now be dragged and the text will be dropped
button.setTransferHandler(transfer);

button.addMouseListener(new MouseAdapter(){
    public void mousePressed(MouseEvent e){
         JButton button = (JButton)e.getSource();
         TransferHandler handle = button.getTransferHandler();
         handle.exportAsDrag(button, e, TransferHandler.COPY);
            }
        });

问题是SWT,而不是Swing。