input=new TextField(60);buttonen=new Button("加密");buttonde=new Button("解密");
buttoncon=new Button("确定");Cancel=new Button("取消");buttond=new Button("解密");
clear=new Button("清空输出");clear.addActionListener(this);buttonen.addActionListener(this);
uttonde.addActionListener(this);buttoncon.addActionListener(this) Cancel.addActionListener(this);buttond.addActionListener(this);
textarea=new TextArea("",30,100,TextArea.SCROLLBARS_HORIZONTAL_ONLY);
textarea.setForeground(Color.MAGENTA);textarea.setBackground(Color.lightGray);
textarea.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
textarea.setForeground(new Color(50,150,150));
p1.add(labelin);p1.add(input);p1.add(buttoncon);p1.add(buttond);p1.add(Cancel);
p2.add(buttonen);p2.add(buttonde);p2.add(clear);p3.add(textarea);
panel.add(p1,BorderLayout.NORTH);panel.add(p3,BorderLayout.CENTER);
panel.add(p2,BorderLayout.SOUTH);add(panel);}
public void actionPerformed(ActionEvent e)
{ if(e.getSource()==buttoncon){ if(DE_FLAG==1)
{ textarea.append("\n\n\n");Bufferen=des.Encrypt(Bufferswap);
textarea.append(Bufferen);DE_FLAG=0;}
else{ Bufferde=input.getText();textarea.append("\n\n\n");
Bufferen=des.Encrypt(Bufferde);textarea.append(Bufferen);
Bufferswap=Bufferen;EN_FLAG=1;}}
if(e.getSource()==buttond)
{ if(EN_FLAG==1){textarea.append("\n\n\n");
Bufferde=des.Dencrypt(Bufferswap);textarea.append(Bufferde);EN_FLAG=0;}
else{textarea.append("\n\n\n");Bufferen=input.getText();
Bufferde=des.Dencrypt(Bufferen);textarea.append(Bufferde);
Bufferswap=Bufferde;DE_FLAG=1;}}
if(e.getSource()==buttonen){ if(DE_FLAG_FILE==1){
textarea.append("\n\n\n");AFTER_FILEBUFFER=des.Encrypt(Bufferswap);
textarea.append(AFTER_FILEBUFFER);DE_FLAG_FILE=0;}
else{ AFTER_FILEBUFFER=textarea.getText().trim();textarea.append("\n\n\n");
BEFOR_FILEBUFFER=des.Encrypt(AFTER_FILEBUFFER);
textarea.append(BEFOR_FILEBUFFER);Bufferswap=BEFOR_FILEBUFFER;
EN_FLAG_FILE=1;}}
if(e.getSource()==buttonde){ if(EN_FLAG_FILE==1)
{textarea.append("\n\n\n");AFTER_FILEBUFFER=des.Dencrypt(Bufferswap);
textarea.append(AFTER_FILEBUFFER);EN_FLAG_FILE=0;}
else{ textarea.append("\n\n\n");BEFOR_FILEBUFFER=textarea.getText().trim();
AFTER_FILEBUFFER=des.Dencrypt(BEFOR_FILEBUFFER);
textarea.append(AFTER_FILEBUFFER);Bufferswap=AFTER_FILEBUFFER;
DE_FLAG_FILE=1;} }if(e.getSource()==Cancel){input.setText("");}if(e.getSource()==clear)
{textarea.setText(""); }}}
3.3.3文本文件加密模块
该功能模块的主要任务是打开一个欲加密的文本文件,对其进行加密,点击保存按钮将保存此次加密的结果保存到文件中.其运行效果如图3-3所示
3.3.4简单密匙管理模块
该模块的功能是修改密匙设置,用户可根据自己的实际需要自行设定密匙.其运行效果如图3-4所示.
其实现代码如下所示:
class PopOutDialog extends Frame implements ActionListener
{TextField text;Panel p;Button confirm;Button cancel;Label lab;public PopOutDialog(){
setVisible(true);setBounds(Facade.dim.width/2-200,Facade.dim.height/2-100,500,70);
setTitle("修改密钥");this.setBackground(Color.pink);
p=new Panel();text=new TextField("请输入你的密钥最大4个汉字