急!关于鼠标拖放问题,分不够再加 java.awt.dnd和java.awt.datatransfer包是支持鼠标的拖放交换程序的数据的功能的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 文件1:package jdraganddropdemo;import javax.swing.JLabel;import java.awt.dnd.DragGestureEvent;import java.awt.dnd.DragGestureListener;import java.awt.dnd.*;import java.awt.datatransfer.*;class DragJLabel extends JLabel implements DragGestureListener, DragSourceListener { DragSource ds = DragSource.getDefaultDragSource(); public DragJLabel(String title,int alignment){ super(title,alignment); int action = DnDConstants.ACTION_COPY_OR_MOVE; ds.createDefaultDragGestureRecognizer(this,action,this); } public void dragGestureRecognized(DragGestureEvent dge) { /**@todo Implement this java.awt.dnd.DragGestureListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragGestureRecognized() not yet implemented."); try{ Transferable tr = new StringSelection(this.getText()); dge.startDrag(DragSource.DefaultCopyNoDrop,tr,this); }catch(Exception err){ err.printStackTrace(); } } public void dragEnter(DragSourceDragEvent dsde) { /**@todo Implement this java.awt.dnd.DragSourceListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragEnter() not yet implemented."); DragSourceContext dsc = dsde.getDragSourceContext(); int action = dsde.getDropAction(); if ((action&DnDConstants.ACTION_COPY)!=0) dsc.setCursor(DragSource.DefaultCopyDrop); else dsc.setCursor(DragSource.DefaultCopyNoDrop); } public void dragOver(DragSourceDragEvent dsde) { /**@todo Implement this java.awt.dnd.DragSourceListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragOver() not yet implemented."); } public void dropActionChanged(DragSourceDragEvent dsde) { /**@todo Implement this java.awt.dnd.DragSourceListener method*/ //throw new java.lang.UnsupportedOperationException("Method dropActionChanged() not yet implemented."); } public void dragExit(DragSourceEvent dse) { /**@todo Implement this java.awt.dnd.DragSourceListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragExit() not yet implemented."); } public void dragDropEnd(DragSourceDropEvent dsde) { /**@todo Implement this java.awt.dnd.DragSourceListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragDropEnd() not yet implemented."); if (!dsde.getDropSuccess()) return; // int action = dsde.getDropAction(); //if ((action&DnDConstants.ACTION_MOVE)!=0) // this.setText(""); }} 文件2:package jdraganddropdemo;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.awt.datatransfer.*;import java.awt.dnd.*;public class MainFrame extends JFrame implements DropTargetListener { private JPanel contentPane; private BorderLayout borderLayout1 = new BorderLayout(); private JTextField jTextField1 = new JTextField(); DragJLabel label = new DragJLabel("Hello World !",SwingConstants.CENTER); //Construct the frame public MainFrame() { enableEvents(AWTEvent.WINDOW_EVENT_MASK); try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } //Component initialization private void jbInit() throws Exception { //setIconImage(Toolkit.getDefaultToolkit().createImage(MainFrame.class.getResource("[Your Icon]"))); contentPane = (JPanel) this.getContentPane(); contentPane.setLayout(borderLayout1); this.setSize(new Dimension(410, 114)); this.setTitle("JDragAndDropDemo"); jTextField1.setFont(new java.awt.Font("Dialog", 0, 14)); contentPane.add(jTextField1, BorderLayout.SOUTH); contentPane.add(this.label,BorderLayout.NORTH); new DropTarget(this.jTextField1,DnDConstants.ACTION_COPY_OR_MOVE,this); } //Overridden so we can exit when window is closed protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { System.exit(0); } } public void dragEnter(DropTargetDragEvent dtde) { /**@todo Implement this java.awt.dnd.DropTargetListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragEnter() not yet implemented."); } public void dragOver(DropTargetDragEvent dtde) { /**@todo Implement this java.awt.dnd.DropTargetListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragOver() not yet implemented."); } public void dropActionChanged(DropTargetDragEvent dtde) { /**@todo Implement this java.awt.dnd.DropTargetListener method*/ //throw new java.lang.UnsupportedOperationException("Method dropActionChanged() not yet implemented."); } public void dragExit(DropTargetEvent dte) { /**@todo Implement this java.awt.dnd.DropTargetListener method*/ //throw new java.lang.UnsupportedOperationException("Method dragExit() not yet implemented."); } public void drop(DropTargetDropEvent dtde) { /**@todo Implement this java.awt.dnd.DropTargetListener method*/ //throw new java.lang.UnsupportedOperationException("Method drop() not yet implemented."); try{ Transferable tr = dtde.getTransferable(); if (dtde.isDataFlavorSupported(DataFlavor.stringFlavor)){ dtde.acceptDrop(dtde.getDropAction()); String s = (String) tr.getTransferData(DataFlavor.stringFlavor); this.jTextField1.setText(this.jTextField1.getText()+s); dtde.dropComplete(true); }else{ dtde.rejectDrop(); } }catch(Exception err){ err.printStackTrace(); } }} 不能连续回复大于3次第三个文件:package jdraganddropdemo;import javax.swing.UIManager;import java.awt.*;public class JDragAndDropDemo { private boolean packFrame = false; //Construct the application public JDragAndDropDemo() { MainFrame frame = new MainFrame(); //Validate frames that have preset sizes //Pack frames that have useful preferred size info, e.g. from their layout if (packFrame) { frame.pack(); } else { frame.validate(); } //Center the window Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); frame.setVisible(true); } //Main method public static void main(String[] args) {/* try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch(Exception e) { e.printStackTrace(); }*/ new JDragAndDropDemo(); }} 关于动态代理Proxy.newProxyInstance方法参数的理解问题 这代码有什么不妥之处 java2 sdk 1.4 0 是做什么用的啊,也是java的开发工具吗 想做好这个就辞职,兄弟们帮看一下。 一个栈程序的问题 eclipse中开发GUI程序的两个小问题 ClassLoad.getResource的问题。 study_body 进来 菜鸟请教各位大虾! 新手求解 java 向下转型问题 日期转换的问题! 关于javamail的folder.create()...
package jdraganddropdemo;import javax.swing.JLabel;
import java.awt.dnd.DragGestureEvent;
import java.awt.dnd.DragGestureListener;
import java.awt.dnd.*;
import java.awt.datatransfer.*;class DragJLabel extends JLabel implements DragGestureListener, DragSourceListener { DragSource ds = DragSource.getDefaultDragSource();
public DragJLabel(String title,int alignment){
super(title,alignment); int action = DnDConstants.ACTION_COPY_OR_MOVE;
ds.createDefaultDragGestureRecognizer(this,action,this); }
public void dragGestureRecognized(DragGestureEvent dge) {
/**@todo Implement this java.awt.dnd.DragGestureListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragGestureRecognized() not yet implemented.");
try{
Transferable tr = new StringSelection(this.getText());
dge.startDrag(DragSource.DefaultCopyNoDrop,tr,this);
}catch(Exception err){
err.printStackTrace();
}
}
public void dragEnter(DragSourceDragEvent dsde) {
/**@todo Implement this java.awt.dnd.DragSourceListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragEnter() not yet implemented.");
DragSourceContext dsc = dsde.getDragSourceContext();
int action = dsde.getDropAction();
if ((action&DnDConstants.ACTION_COPY)!=0)
dsc.setCursor(DragSource.DefaultCopyDrop);
else
dsc.setCursor(DragSource.DefaultCopyNoDrop);
}
public void dragOver(DragSourceDragEvent dsde) {
/**@todo Implement this java.awt.dnd.DragSourceListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragOver() not yet implemented.");
}
public void dropActionChanged(DragSourceDragEvent dsde) {
/**@todo Implement this java.awt.dnd.DragSourceListener method*/
//throw new java.lang.UnsupportedOperationException("Method dropActionChanged() not yet implemented.");
}
public void dragExit(DragSourceEvent dse) {
/**@todo Implement this java.awt.dnd.DragSourceListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragExit() not yet implemented.");
}
public void dragDropEnd(DragSourceDropEvent dsde) {
/**@todo Implement this java.awt.dnd.DragSourceListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragDropEnd() not yet implemented.");
if (!dsde.getDropSuccess())
return;
// int action = dsde.getDropAction();
//if ((action&DnDConstants.ACTION_MOVE)!=0)
// this.setText("");
}
}
package jdraganddropdemo;import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.datatransfer.*;
import java.awt.dnd.*;public class MainFrame extends JFrame implements DropTargetListener {
private JPanel contentPane;
private BorderLayout borderLayout1 = new BorderLayout();
private JTextField jTextField1 = new JTextField(); DragJLabel label = new DragJLabel("Hello World !",SwingConstants.CENTER);
//Construct the frame
public MainFrame() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
//setIconImage(Toolkit.getDefaultToolkit().createImage(MainFrame.class.getResource("[Your Icon]")));
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(410, 114));
this.setTitle("JDragAndDropDemo");
jTextField1.setFont(new java.awt.Font("Dialog", 0, 14));
contentPane.add(jTextField1, BorderLayout.SOUTH);
contentPane.add(this.label,BorderLayout.NORTH); new DropTarget(this.jTextField1,DnDConstants.ACTION_COPY_OR_MOVE,this);
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
public void dragEnter(DropTargetDragEvent dtde) {
/**@todo Implement this java.awt.dnd.DropTargetListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragEnter() not yet implemented.");
}
public void dragOver(DropTargetDragEvent dtde) {
/**@todo Implement this java.awt.dnd.DropTargetListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragOver() not yet implemented.");
}
public void dropActionChanged(DropTargetDragEvent dtde) {
/**@todo Implement this java.awt.dnd.DropTargetListener method*/
//throw new java.lang.UnsupportedOperationException("Method dropActionChanged() not yet implemented.");
}
public void dragExit(DropTargetEvent dte) {
/**@todo Implement this java.awt.dnd.DropTargetListener method*/
//throw new java.lang.UnsupportedOperationException("Method dragExit() not yet implemented.");
}
public void drop(DropTargetDropEvent dtde) {
/**@todo Implement this java.awt.dnd.DropTargetListener method*/
//throw new java.lang.UnsupportedOperationException("Method drop() not yet implemented.");
try{
Transferable tr = dtde.getTransferable();
if (dtde.isDataFlavorSupported(DataFlavor.stringFlavor)){
dtde.acceptDrop(dtde.getDropAction());
String s = (String) tr.getTransferData(DataFlavor.stringFlavor);
this.jTextField1.setText(this.jTextField1.getText()+s);
dtde.dropComplete(true);
}else{
dtde.rejectDrop(); }
}catch(Exception err){
err.printStackTrace();
}
}
}
第三个文件:
package jdraganddropdemo;import javax.swing.UIManager;
import java.awt.*;public class JDragAndDropDemo {
private boolean packFrame = false; //Construct the application
public JDragAndDropDemo() {
MainFrame frame = new MainFrame();
//Validate frames that have preset sizes
//Pack frames that have useful preferred size info, e.g. from their layout
if (packFrame) {
frame.pack();
}
else {
frame.validate();
}
//Center the window
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
frame.setVisible(true);
}
//Main method
public static void main(String[] args) {
/* try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e) {
e.printStackTrace();
}
*/ new JDragAndDropDemo();
}
}