Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

JavaÓ¦Óü¼ÇÉ——Îı¾³·Ïú¡¢»Ö¸´¹¦ÄܵÄʵÏÖ

×÷Îı¾±à¼­Æ÷µÄʱºò£¬³·Ïú(undo)¡¢»Ö¸´(redo)ÊDZز»¿ÉÉÙµÄÁ½¸ö¹¦ÄÜ¡£ÊµÏÖÕâ¸ö¹¦ÄÜ£¬ÒªÓõ½javax.swing.undo°üÖеÄUndoManagerÀà¡£
UndoManagerÀàÓÐÈçϳ£Ó÷½·¨£º
boolean canUndo()  ——ÅжÏÄÜ·ñ½øÐг·Ïû²Ù×÷£¬¿ÉÒÔÔò·µ»Øtrue¡£
boolean canRedo()  ——ÅжÏÄÜ·ñ½øÐлָ´²Ù×÷£¬¿ÉÒÔÔò·µ»Øtrue¡£
void Undo()  ——½øÐг·Ïû²Ù×÷¡£
void Redo()  ——½øÐлָ´²Ù×÷¡£
µ«ÊÇ£¬½øÐг·Ïú¡¢»Ö¸´²Ù×÷ǰ»¹Ó¦Îª³·Ïú¡¢»Ö¸´µÄ¶ÔÏó×¢²áÕìÌýÆ÷¡£ÔÚÎı¾±à¼­Æ÷ÖУ¬¶ÔÏó¾ÍÊÇÎı¾¡£ÀýÈçÏÈÉùÃ÷Á½¸ö¶ÔÏó£º
JTextArea text = new JTextArea();
UndoManager undomg = new UndoManager();
½ÓÏÂÀ´£¬ÎªtextÌí¼ÓÕìÌýÆ÷£º
text.getDocument().addUndoableEditListener(undomg);
 
ÕâÀïҪ˵Ãûһϣ¬Ö®ËùÒÔҪдgetDocument()ÊÇÒòΪע²áÕìÌýÆ÷µÄ¶ÔÏóÊÇÎı¾£¬²»ÊÇÎı¾¿ò¡£addUndoableEditListener(undomg)µÄ×÷ÓÃÊÇΪtextµÄÎı¾×¢²áÕìÌýÆ÷£¬¸Ã·½·¨µÄÔ­ÐÍÊÇ£º
 
void addUndoableEditListener(UndoableEditListener listener) 
¿ÉÒÔ¿´³ö£¬¸Ã·½·¨µÄ²ÎÊýÓ¦ÊÇÒ»¸öUndoableEditListener½Ó¿ÚÀàÐ͵IJÎÊý£¬¶øÎÒÃÇÓõIJÎÊýÊÇUndoManagerÀàÐÍ£¬ÕâÊÇÒòΪUndoManagerÀàÒѾ­ÊµÏÖÁËUndoableEditListener½Ó¿ÚµÄÔµ¹Ê¡£
 
ÏÖÔھͿÉÒÔ½øÐг·Ïú¡¢»Ö¸´²Ù×÷ÁË¡£·½·¨ÊÇ£º
 
undomg.Undo(); //³·Ïú
undomg.Redo(); //»Ö¸´
 
µ«ÊÇÕâÑù²»ËãÍêÃÀ£¬ÒòΪÈç¹ûÎÞ·¨³·Ïú»ò»Ö¸´£¬ÕâÁ½¸öÓï¾ä¾Í²»»áÆðÈκÎ×÷Óá£Òò´ËÎÒÃǸÄÓÃÈçÏ·½·¨£º
 
if(undomg.canUndo()) { //³·Ïú
    undomg.Undo();
}
if(undomg.canRedo()) { //»Ö¸´
    undomg.Redo();
}
 
ÕâÑùÒ»À´£¬Îı¾±à¼­Æ÷µÄ³·Ïú¡¢»Ö¸´¹¦ÄܺÜÈÝÒ׵ؾÍʵÏÖÁË¡£ÒÔÏÂÊÇÒ»¸öÀý×Ó£º
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.undo.*;
class UndoDemo extends JFrame {
static JTextArea text = new JTextArea();
static JPanel pnl = new JPanel();
static JButton unbtn = new JButton("³·Ïú");
static JButton rebtn = new JButton("»Ö¸´");
static UndoManager undomg = new UndoManager();
UndoDemo() {
super("³·Ïú¡¢»Ö¸´¹¦ÄÜʵÀý");
setVisible(true);
setSize(400,300);
s


Ïà¹ØÎĵµ£º

JAVA Éú³ÉËæ»úÊýÊý×é

Ò»¡¢JAVA»ñÈ¡Ëæ»úÊýµÄ·½·¨
//ʹÓÃjava.lang.MathÀàµÄrandom()·½·¨
double a = Math.random();
System.out.println("0.0-1.0µÄËæ»úÊý£º" + a);
double b = Math.random()*100;
System.out.println("0.0-100.0µÄËæ»úÊý£º" + b);
int c = (int)(Math.random()*100);
System.out.println("0-100µÄËæ»úÕûÊý£º" + c);  ......

רÌâ£ºÈ«ÃæÁ˽âJavaÍøÂç±à³ÌµÄͨÐÅ»úÖÆ

ÊÂʵÉÏÍøÂç±à³Ì¼òµ¥µÄÀí½â¾ÍÊÇÁ½Ì¨¼ÆËã»úÏ໥ͨѶÊý¾Ý¶øÒÑ£¬¶ÔÓÚ³ÌÐòÔ±¶øÑÔ£¬È¥ÕÆÎÕÒ»ÖÖ±à³Ì½Ó¿Ú²¢Ê¹ÓÃÒ»ÖÖ±à³ÌÄ£ÐÍÏà¶Ô¾Í»áÏԵüòµ¥µÄ¶àÁË£¬Java SDKÌṩһЩÏà¶Ô¼òµ¥µÄApiÀ´Íê³ÉÕâЩ¹¤×÷¡£Socket¾ÍÊÇÆäÖÐÖ®Ò»£¬¶ÔÓÚJava¶øÑÔ£¬ÕâЩApi´æÔÚÓëjava.net Õâ¸ö°üÀïÃæ£¬Òò´ËÖ»Òªµ¼ÈëÕâ¸ö°ü¾Í¿ÉÒÔ×¼±¸ÍøÂç±à³ÌÁË¡£
http://java.c ......

javaÖеÄtoString() ·½·¨£¨¶à¿´±¾ÎĵÄÀý×Ó£¡£©

toString() ·½·¨£º
    toString()·½·¨ÔÚObjectÀàÖж¨Ò壬Æä·µ»ØÖµÊÇStringÀàÐÍ£¬ÃèÊöµ±Ç°¶ÔÏóµÄÓйØÐÅÏ¢
    ÔÚ½øÐÐStringÓëÆäËüÀàÐÍÊý¾ÝµÄÁ¬½Ó²Ù×÷ʱ£¬×Ô¶¯µ÷ÓÃtoString()·½·¨
    ¿ÉÒÔ¸ù¾ÝÐèÒªÔÚÓû§×Ô¶¨ÒåÀàÐÍÖÐÖØÐ´toString()·½·¨
    »ù±¾ÀàÐÍÊý¾Ý× ......

java¾­µäÊé¼®

java¾­µäÊé¼®»ã×Ü£¨²¿·Ö£©
Ò»¡¢ÈëÃÅ 
¡¶Java 2´ÓÈëÃŵ½¾«Í¨¡·£­ ÍƼö 
¡¶Thinking in Java¡·£­ Ç¿ÁÒÍÆ¼ö* 
O’reillyµÄJava±à³Ì»ù´¡ÏµÁР£­ ²Î¿¼* 
¶þ¡¢½ø½× 
¡¶Java Cook Book¡·£­ ·Ç³£ÍƼö* £¨°üº¬ÁËJava±à³ÌµÄTips£¬Êʺϵ± ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ