swt中如何实现label鼠标拖动位置? swt中如何实现label鼠标拖动位置?label跟随鼠标显示烦请高手指教万分感谢!本人初学,最好有源码讲解! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 对label上实现鼠标按下,移动事件,监听鼠标坐标x和y的变化,然后用label的旧坐标加上鼠标x,y坐标的变化值来设置label的坐标。 跟button的鼠标事件一样吧,我用的是swing,没用过swt,不过理论上是一样的。 自己试了一下,感觉一般.附段源码...import javax.swing.JFrame;import javax.swing.JLabel;import java.awt.*;import java.awt.event.MouseEvent;import java.awt.event.MouseMotionAdapter;class Frame1 extends JFrame { public Frame1() { try { jbInit(); } catch (Exception exception) { exception.printStackTrace(); } } private void jbInit() throws Exception { setBounds(300,300,300,200); setVisible(true); getContentPane().setLayout(null); jLabel1.setText("jLabel1"); jLabel1.setBounds(new Rectangle(168, 156, 89, 20)); this.getContentPane().add(jLabel1); this.addMouseMotionListener(new Frame1_this_mouseMotionAdapter(this)); } public static void main(String[] args) { Frame1 frame1 = new Frame1(); } JLabel jLabel1 = new JLabel(); public void this_mouseMoved(MouseEvent e) { jLabel1.setLocation(e.getX(),e.getY()); }}class Frame1_this_mouseMotionAdapter extends MouseMotionAdapter { private Frame1 adaptee; Frame1_this_mouseMotionAdapter(Frame1 adaptee) { this.adaptee = adaptee; } public void mouseMoved(MouseEvent e) { adaptee.this_mouseMoved(e); }} 这个报错有人知道为什么吗?哭死啦。。。。。5555 java初学者,向各位前辈请教:有关异常处理的问题 大家帮我看看这个代码片段的问题是什么?在考哪个知识点 java socket客户端与服务器联系的问题 求阿拉伯数字转大写数字方法 ant放置生成代码的问题 我能够编译文件,但是执行却不行~!!! 简单负值问题 关于进度条的问题?在线等 请问jdbc2.0现在可以用了吗,现在的最高版本是多少? 关于事件的一个问题!!!不知道对大家有没有难度..........谢谢大家的支援!!! 對JAR包中XML文件寫數據涉及的路徑問題,請大家多多幫忙。
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;class Frame1 extends JFrame {
public Frame1() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
} private void jbInit() throws Exception {
setBounds(300,300,300,200);
setVisible(true);
getContentPane().setLayout(null);
jLabel1.setText("jLabel1");
jLabel1.setBounds(new Rectangle(168, 156, 89, 20));
this.getContentPane().add(jLabel1);
this.addMouseMotionListener(new Frame1_this_mouseMotionAdapter(this));
} public static void main(String[] args) {
Frame1 frame1 = new Frame1();
} JLabel jLabel1 = new JLabel();
public void this_mouseMoved(MouseEvent e) {
jLabel1.setLocation(e.getX(),e.getY());
}
}
class Frame1_this_mouseMotionAdapter extends MouseMotionAdapter {
private Frame1 adaptee;
Frame1_this_mouseMotionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
} public void mouseMoved(MouseEvent e) {
adaptee.this_mouseMoved(e);
}
}