怎样修改现成的代码,使其在Netbeans中可以运行?

donald1987 2008-11-15 03:20:18
小弟是java初学者,想请教众位大侠一个问题,谢谢!
在网上找到如下的java源代码,目的是实现拖拽图片的效果,不知道怎么让它运行,请指点迷津!
是应该准备什么条件呢?或者修改哪里?劳烦详细说明!非常感谢!


源代码:


/*
* DragPictureDemo.java
*
* Created on 2008年11月14日, 下午6:46
*/

package myproject;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
/**
*
* @author 60008
*/
public class DragPictureDemo extends javax.swing.JFrame {

JLabel jlPic; //图片,用于拖动
/** Creates new form DragPictureDemo */
public DragPictureDemo() {

super("图片的拖动效果"); //调用父类构造函数
Icon image=new ImageIcon(this.getClass().getResource("E:/FYP/img/1.jpg")); //实例化图标
jlPic = new JLabel(image); //实例化带图片的标签
getContentPane().add(jlPic); //增加标签到容器上

DragPicListener listener=new DragPicListener(); //鼠标事件处理
jlPic.addMouseListener(listener); //增加标签的事件处理
jlPic.addMouseMotionListener(listener);

setSize(300,200); //设置窗口尺寸
setVisible(true); //设置窗口为可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}

class DragPicListener implements MouseInputListener{ //鼠标事件处理
Point p=new Point(0,0); //坐标点
public void mouseMoved(MouseEvent e){}
public void mouseDragged(MouseEvent e){
Point newP=SwingUtilities.convertPoint(jlPic,e.getPoint(),jlPic.getParent()); //转换坐标系统
jlPic.setLocation(jlPic.getX()+(newP.x-p.x),jlPic.getY()+(newP.y-p.y)); //设置标签的新位置
p=newP; //更改坐标点
}
public void mouseReleased(MouseEvent e){}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){
p=SwingUtilities.convertPoint(jlPic,e.getPoint(),jlPic.getParent()); //得到当前坐标点
initComponents();

}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 400, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 300, Short.MAX_VALUE)
);

pack();
}// </editor-fold>//GEN-END:initComponents

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new DragPictureDemo();
}
/*public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new DragPictureDemo().setVisible(true);
}
});
}
*/

// Variables declaration - do not modify//GEN-BEGIN:variables
// End of variables declaration//GEN-END:variables
}
...全文
129 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
donald1987 2008-11-15
  • 打赏
  • 举报
回复
如果我有中文的书,也就能自己学了……

谁能一步登天呢?我现在没有自学的条件,真的很困窘阿……
muhongzhang 2008-11-15
  • 打赏
  • 举报
回复
推荐用Eclipse,详细步骤可以看书!

如果出现什么问题,再贴上来吧!!!
donald1987 2008-11-15
  • 打赏
  • 举报
回复
老大说的是!我确实没深入的学过java,不过我现在要做毕业课题,是一个对于我来说十分困难的项目,所以我在自学,我是想系统的学习,但时间不是很够了
所以我想借鉴点现成的东西来学习!希望老大您能不惜赐教!
老紫竹 2008-11-15
  • 打赏
  • 举报
回复
不是指点迷津,是你从来就没弄过java,你先去书店看看免费的入门书吧!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧