Java Swing 彈出對話方塊的使用

來源:互聯網
上載者:User
Swing 中提供了 JOptionPane 類來實作類別似 Windows 平台下的 MessageBox 的功能,利用 JOptionPane 類中的各個 static 方法來產生各種標準的對話方塊,實現顯示出資訊、提出問題、警告、使用者輸入參數等功能。 這些對話方塊都是模式對 話框:

 

ConfirmDialog   ---  確認對話方塊,提出問題,然後由使用者自己來確認 ( 按 "Yes" 或 "No" 按鈕 )

InputDialog   ---  提示輸入文本

MessageDialog   ---  顯示資訊

OptionDialog   --  組合其它三個對話方塊類型。

 

這四個對話方塊可以採用 showXXXDialog() 來顯示,如 showConfirmDialog() 顯示確認對話方塊、showInputDialog() 顯示輸入文本對話方塊、 showMessageDialog() 顯示資訊對話方塊、showOptionDialog() 顯示選擇性的對話方塊。它們所使用的參數說明如下:

① ParentComponent :指示對話方塊的父視窗對象,一般為當前視窗。也可以為 null 即採用預設的Frame 作為父視窗,此時對話方塊將設定在螢幕的正中。

② message :指示要在對話方塊內顯示的描述性的文字

③ String title :標題條文字串。

④ Component :在對話方塊內要顯示的組件 ( 如按鈕 )

⑤ Icon :在對話方塊內要顯示的表徵圖

⑥ messageType :一般可以為如下的值 ERROR_MESSAGE 、INFORMATION_MESSAGE 、 WARNING_MESSAGE 、 QUESTION_MESSAGE、 PLAIN_MESSAGE 、

⑦ optionType :它決定在對話方塊的底部所要顯示的按鈕選項。一般可以為 DEFAULT_OPTION 、YES_NO_OPTION 、 YES_NO_CANCEL_OPTION 、 OK_CANCEL_OPTION 。

使用執行個體:

(1) 顯示 MessageDialog

JOptionPane.showMessageDialog(null, " 在對話方塊內顯示的描述性的文字 ", " 標題條文字串", JOptionPane.ERROR_MESSAGE);

(2) 顯示 ConfirmDialog

Java代碼   [java]  view plain  copy JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION);            JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION);    
 

 

(3) 顯示 OptionDialog :該種對話方塊可以由使用者自己來設定各個按鈕的個數並返回使用者點擊各個按鈕的序號( 從 0 開始計數 )


Java代碼  [java]  view plain  copy Object[] options = {" 確定 "," 取消 "," 協助 "};                  int response=JOptionPane.showOptionDialog(this, " 這是個選項對話方塊,使用者可以選擇自己的按鈕的個數 ", " 選項對話方塊標題 ",JOptionPane.YES_OPTION,             JOptionPane.QUESTION_MESSAGE, null, options, options[0]);           if(response==0)     {           this.setTitle(" 您按下了第 OK 按鈕  ");             } else if(response==1)     {           this.setTitle(" 您按下了第 Cancel 按鈕  ");           } else if(response==2)     {           this.setTitle(" 您按下了第 Help 按鈕  ");           }            Object[] options = {" 確定 "," 取消 "," 協助 "};          int response=JOptionPane.showOptionDialog(this, " 這是個選項對話方塊,使用者可以選擇自己的按鈕的個數 ", " 選項對話方塊標題 ",JOptionPane.YES_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]);          if(response==0)    {          this.setTitle(" 您按下了第 OK 按鈕 ");          }else if(response==1)    {            this.setTitle(" 您按下了第 Cancel 按鈕 ");          }    else

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.