<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    GUI簡單實現凱撒加密法

       凱撒加密法:消息中每個字母換成向后三個字母的字母,例如,明文ATUL變成密文DWXO。

       MainKaisa.java
     1 import javax.swing.JFrame;
     2 
     3 public class MainKaisa {
     4 
     5     /**
     6      * @param nonles
     7      */
     8     public static void main(String[] args) {
     9         //實例化一個窗體
    10         KaisaFrame kaisaFrame = new KaisaFrame();
    11         kaisaFrame.setVisible(true);
    12         kaisaFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    13 
    14     }
    15 
    16 }
      
        Kaisa.java
     1 mport java.awt.event.ActionEvent;
     2 import java.awt.event.ActionListener;
     3 import javax.swing.*;
     4 
     5 public class KaisaFrame extends JFrame {
     6     
     7     JLabel jlDackText = new JLabel();
     8     JButton btnBrightText = new JButton();
     9     JPasswordField jpf = new JPasswordField();
    10     JTextField jtf2 = new JTextField();
    11     char[] buf;
    12     
    13     
    14     public KaisaFrame() {
    15         this.setSize(300,200);    //設置窗體大小
    16         this.setTitle("凱撒加密法");
    17         this.setResizable(false);
    18         
    19         jbInit();
    20     }
    21     
    22     private void isLetter() {
    23         //判斷輸入的內容是否為字母
    24         buf = jpf.getPassword();
    25         for(char c:buf) {
    26             if(Character.isLetter(c) == false) {
    27                 JOptionPane.showMessageDialog(this"不能為非字符""Error", JOptionPane.ERROR_MESSAGE);
    28                 jpf.setText("");
    29                 jtf2.setText("");
    30                 return;
    31             } else {
    32                 makeBrightText();
    33             }
    34         }
    35     }
    36     
    37     private void makeBrightText() {
    38         // 產生明文    
    39         char[] arr = new char[buf.length];
    40         int index=0,temp;
    41         for(char c:buf) {
    42             temp = c+3;    //字母后移三位
    43             if( (temp>90 && temp<97|| temp>122 ) {    
    44                 //若ASCII碼在此區間則減去26(使字符XYZ,xyz循環到XAB,xab)
    45                 temp = temp - 26;
    46                 arr[index++= (char)temp;    
    47             } else {
    48                 arr[index++= (char)temp;
    49             }
    50         } 
    51         
    52         String str = new String(arr);            
    53         jtf2.setText(str);
    54         
    55     }
    56     
    57     private void jbInit() {
    58         //    設置窗體內容        
    59         this.setLayout(null);
    60         jlDackText.setText("輸入密文:"); 
    61         jlDackText.setBounds(30208030);
    62         btnBrightText.setText("生成明文:");
    63         btnBrightText.setBounds(309010030);
    64         jpf.setBounds(160208030);
    65         jpf.setEchoChar('*');
    66         jtf2.setBounds(160908030);
    67         jtf2.setEditable(false);
    68     
    69         this.add(jlDackText);
    70         this.add(jpf);
    71         this.add(btnBrightText);
    72         this.add(jtf2);
    73         
    74         btnBrightText.addActionListener(new ActionListener(){
    75 
    76             @Override
    77             public void actionPerformed(ActionEvent e) {
    78                 isLetter();    //判斷輸入的內容是否為字母        
    79             }
    80 
    81         });
    82     }
    83     
    84 }
    85 
        
        現實圖解:   

          往文本框中輸入密文(只限字符),點擊按鈕,即生成相應密文。                           
           
                                      
          若輸入為非字符,則彈出錯誤框~
         

         簡單的一個程序,說明都不用了。。。

    posted on 2008-09-04 15:51 nonels 閱讀(874) 評論(1)  編輯  收藏 所屬分類: J2SE

    評論

    # re: GUI簡單實現凱撒加密法 [未登錄] 2009-12-18 15:13 nick

    可以請教你一些有關於這格程式的問題嗎??
    拜託 加我MSN >\\\< ~~~b51ak47@hotmail.com  回復  更多評論   

    <2009年12月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類(16)

    隨筆檔案(16)

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲精品高清无码视频| 国产在线国偷精品产拍免费| 亚欧乱色国产精品免费视频| 成人免费观看男女羞羞视频| 99免费在线视频| 香港a毛片免费观看| 夫妻免费无码V看片| 久久久久亚洲爆乳少妇无| 亚洲男人天堂av| 亚洲一区二区三区久久久久| 免费在线观看亚洲| 无码国产精品一区二区免费式直播| 国产jizzjizz免费看jizz| 亚洲第一福利视频| 麻豆安全免费网址入口| 五月亭亭免费高清在线| 亚洲人AV永久一区二区三区久久| 亚洲国产精品日韩在线| 182tv免费视频在线观看| 国产免费黄色大片| sss日本免费完整版在线观看| 亚洲中文字幕无码久久2017| WWW亚洲色大成网络.COM| 成人免费在线看片| 亚洲一区二区久久| 女人毛片a级大学毛片免费| 深夜福利在线视频免费| 亚洲AV综合色一区二区三区| 大妹子影视剧在线观看全集免费| 又黄又大又爽免费视频| 亚洲日韩国产精品乱-久| 91短视频免费在线观看| 亚洲欧美aⅴ在线资源| 成年性午夜免费视频网站不卡| 亚洲免费网站在线观看| 亚洲毛片在线免费观看| 亚洲无删减国产精品一区| 性盈盈影院免费视频观看在线一区| 女人裸身j部免费视频无遮挡| 国产一区二区三区免费视频| 日本免费高清视频|