java dnd
dndÊÇdrag and dropµÄËõд.
javaÖеÄdndÖ÷񻃾¼°µ½3¸öÀà:TransferHandler(ÓÃÀ´´¦ÀíÊý¾ÝµÄÍϷŹý³Ì),Transferable(ÓÃÀ´°ü×°ÍϷŵÄÊý¾Ý),ºÍDataFlavor(ÓÃÀ´±íʾÍϷŵÄÊý¾ÝµÄÀàÐÍ).ÏÂÃæÀ´½éÉÜÕâ3¸öÀàµÄ·½·¨
1.javax.swing.TransferHandler
ËüÓÐÁ½¸ö¹¹Ô캯Êý:
TransferHandler() ×ÓÀàµÄ±ã½Ý¹¹Ôì·½·¨¡£
TransferHandler(String property) ¹¹ÔìÒ»¸öͨ¹ý¼ôÌù°å»òÍϷŲÙ×÷¿ÉÒÔ½« Java Bean ÊôÐÔ´ÓÒ»¸ö×é¼þ´«Êäµ½ÁíÒ»¸ö×é¼þµÄ´«Êä´¦Àí³ÌÐò¡£
Èç,JLabelºÍJTextField¶¼ÓÐtextÕâ¸öÊôÐÔ,ËùÒÔ¿ÉÒԺܼòµ¥µØÊµÏÖ´ÓJTextFieldÀïÍÏÎı¾µ½JLabelÀï,¸Ä±äËüµÄÎı¾.ÏÂÃæÊÇÒ»¸öÀý×Ó
ÔÚtextFieldÀïÊäÈëÎı¾ºó,ÍùlabelÀïÍÏ,labelµÄÎı¾¾Í±äΪtextFieldÀïµÄÎı¾ÁË.Èç¹ûҪʵÏÖ´ÓlabelÍùtextFieldÀïÍÏ,»¹ÒªÁíÍâµÄ·½·¨,ÏȲ»Ëµ
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
class LabelDnd
{
JFrame mainFrame;
JPanel mainPanel;
JLabel label;
JTextField textField;
public LabelDnd() {
mainFrame = new JFrame ( );
mainPanel = new JPanel ( new BorderLayout() );
label = new JLabel ("label");
//ÕâÀïµ÷ÓÃÁËTransferHandlerµÄµÚ¶þ¸ö¹¹Ô캯Êý,²ÎÊýÊÇÒ»¸öJava Bean ÊôÐÔ
label.setTransferHandler( new TransferHandler("text") );
textField = new JTextField(20);
//´ò¿ªtextField×Ô´øµÄÍϷʦÄÜ
textField.setDragEnabled( true );
mainPanel.add( label,BorderLayout.PAGE_START );
mainPanel.add( textField,BorderLayout.PAGE_END );
mainFrame.getContentPane().add( mainPanel );
mainFrame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
mainFrame.pack();
mainFrame.setLocationRelativeTo(null);
mainFrame.setVisible( true );
}
public static&nb
Ïà¹ØÎĵµ£º
JAVA Ìåϵ¼°Æä±à³ÌµÄ¹ý³Ì
°¥£¬±ÏÒµÁËÒ²Ò»¶Îʱ¼äÁË£¬Ö»ÖªµÀÌìÌì³´úÂ룬 JAVA µÄ»ù´¡ÖªÊ¶»ù±¾ÊÇÍüµôÁË£¬¼ÓÉÏÒÔǰһֱûÓÐϵͳµØÑ§Ï°¹ý£¬¸Ð¾õ¿ìÒª·ÏÁË¡£»¹ÊǺúþ²ÏÂÐÄÀ´Ñ§Ñ§»ù´¡°É¡£²»ÄÜÌìÌ쿼³´úÂë¹ýÈÕ×Ó°¡¡£¡£¡£¡££¨ÏÂÎÄ´ó¶àÀ´×Կα¾ÒÔ¼°Ò»Ð©¼¼ÊõÊÓÆµÉϵÄÄÚÈÝ£¬»ù±¾Àí½âÁËһЩÁË£¬Ê£ÏµÄÓÉÒÔºóµÄѧϰÂýÂýÔ ......
¶¨ÒåÔÚÒ»¸öÀàÄÚ²¿µÄÀà½ÐÄÚ²¿À࣬°üº¬ÄÚ²¿ÀàµÄÀà³ÆÎªÍⲿÀà¡£
ÄÚ²¿Àà¿ÉÒÔÉùÃ÷public¡¢protected¡¢privateµÈ·ÃÎÊÏÞÖÆ£¬
¿ÉÒÔÉùÃ÷ΪabstractµÄ¹©ÆäËûÄÚ²¿Àà»òÍⲿÀà¼Ì³ÐÓëÀ©Õ¹£¬
»òÕßÉùÃ÷Ϊstatic¡¢finalµÄ£¬Ò²¿ÉÒÔʵÏÖÌØ¶¨µÄ½Ó¿Ú¡£
staticµÄÄÚ²¿ÀàÐÐΪÉÏÏóÒ»¸ö¶ÀÁ¢µÄÀ࣬
·ÇstaticÔÚÐÐΪÉÏÀàËÆÀàµÄÊôÐÔ»ò·½·¨ÇÒ½ûÖ¹ÉùÃ÷s ......
ÕâÊÇÒ»¸öʵսÖзdz£ÖØÒªµ«ÊÇÈÝÒ×±»ºöÊӵĸÅÄ˵ËüÖØÒª£¬ÊÇÒòΪËü±ÈDatcbaseÖØÒª£»ËµËüÈÝÒ×±»ºöÊÓÒ²ÊÇͬÑùµÄÔÒò£¬Ëü¾³£±»Datcbase¸ÅÄîÌæ´ú¡£
¡¡¡¡Èç¹ûÄã¾ÑéºÍ¾ÀúÖÐûÓÐ״̬Õâ¸ö¸ÅÄ¼«¶ËµØËµ£º¿ÉÄÜÄãµÄjava±à³Ì±à³ÌSys¾Ñ黹δ»ýÀÛµ½Ò»¶¨³Ì¶È£¬×´Ì¬ÊÇÿ¸öjava±à³Ì±à³Ì³ÌʽԱÉîÈëjava±à³Ì±à³ÌSysºó±ØÈ»Åöµ½µÄÎÊÌâ¡£
......
µÚÒ»£¬Ì¸Ì¸final, finally, finalizeµÄÇø±ð¡£
final ÐÞÊηû£¨¹Ø¼ü×Ö£©Èç¹ûÒ»¸öÀà±»ÉùÃ÷Ϊfinal£¬Òâζ×ÅËü²»ÄÜÔÙÅÉÉú³öеÄ×ÓÀ࣬²»ÄÜ×÷Ϊ¸¸Àà±»¼Ì³Ð¡£Òò´ËÒ»¸öÀ಻Äܼȱ»ÉùÃ÷Ϊ abstractµÄ£¬ÓÖ±»ÉùÃ÷ΪfinalµÄ¡£½«±äÁ¿»ò·½·¨ÉùÃ÷Ϊfinal£¬¿ÉÒÔ±£Ö¤ËüÃÇÔÚʹÓÃÖв»±»¸Ä±ä¡£±»ÉùÃ÷ΪfinalµÄ±äÁ¿±ØÐëÔÚÉùÃ÷ʱ¸ø¶¨³õÖµ£¬¶øÔÚÒÔ ......