<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)

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲真人日本在线| 亚洲一区二区三区在线播放| 亚洲午夜视频在线观看| 中文字幕视频免费在线观看| 免费人成无码大片在线观看| 成人国产网站v片免费观看| 免费v片视频在线观看视频| 免费观看亚洲人成网站| 亚洲AⅤ永久无码精品AA| 一级毛片aa高清免费观看| 亚洲高清偷拍一区二区三区| 一区视频免费观看| 亚洲午夜福利在线观看| 久久er国产精品免费观看2| 91天堂素人精品系列全集亚洲| 91福利免费体验区观看区| 4444亚洲国产成人精品| 青青青国产在线观看免费网站| 亚洲高清有码中文字| 日韩一区二区在线免费观看| 一本到卡二卡三卡免费高| 亚洲日韩精品射精日| 久久狠狠躁免费观看| 国产成人精品日本亚洲专一区| 国产精品视_精品国产免费 | 亚洲A∨精品一区二区三区下载| 国产免费观看网站| 丝袜捆绑调教视频免费区| 亚洲综合自拍成人| 最近2019中文免费字幕| 一级毛片免费播放试看60分钟| 亚洲成人在线网站| 日韩免费一级毛片| 中文无码成人免费视频在线观看| 亚洲无砖砖区免费| 亚洲第一黄色网址| 无码区日韩特区永久免费系列| 色偷偷尼玛图亚洲综合| 久久91亚洲人成电影网站| 无码中文在线二区免费| 福利免费在线观看|