當前位置:編程學習大全網 - 源碼下載 - java怎樣改變JOptionPane.showInputdialog()對話框的大小

java怎樣改變JOptionPane.showInputdialog()對話框的大小

這個方法本身是沒有參數可以控制大小的,源碼如下

public?static?Object?showInputDialog(Component?parentComponent,

Object?message,?String?title,?int?messageType,?Icon?icon,

Object[]?selectionValues,?Object?initialSelectionValue)

throws?HeadlessException?{

JOptionPanepane?=?new?JOptionPane(message,?messageType,

OK_CANCEL_OPTION,?icon,

null,?null);

pane.setWantsInput(true);

pane.setSelectionValues(selectionValues);

pane.setInitialSelectionValue(initialSelectionValue);

pane.setComponentOrientation(((parentComponent?==?null)?

getRootFrame()?:?parentComponent).getComponentOrientation());

int?style?=?styleFromMessageType(messageType);

JDialog?dialog?=?pane.createDialog(parentComponent,?title,?style);

pane.selectInitialValue();

dialog.show();

dialog.dispose();

Object?value?=?pane.getInputValue();

if?(value?==?UNINITIALIZED_VALUE)?{

return?null;

}

return?value;

}?

也就是說實際上控制對話框大小的是JDialog.那麽在使用的時候不要直接使用showInputDialog這個方法了,把這個方法加以封裝成為壹個新的方法來使用.

public?class?Test{

public?static?Object?showInputDialog(Object?message,int?messageType,int?optionType,String?title,int?width,int?height){

JOptionPane?pane?=?new?JOptionPane(message,?messageType,?optionType);

pane.setWantsInput(true);

JDialog?dialog?=?pane.createDialog(title);

dialog.setSize(width,?height);

dialog.show();

dialog.dispose();

Object?value?=?pane.getInputValue();

if(value?==?JOptionPane.UNINITIALIZED_VALUE)return?null;

return?value;

}

public?static?void?main(String...?args){

showInputDialog("請輸入:",JOptionPane.QUESTION_MESSAGE,JOptionPane.OK_CANCEL_OPTION,"Test",400,300);

}

}

以上的代碼幫妳稍微封裝了壹下,覺得不滿意妳可以自己根據源碼來修改封裝的內容.我封裝的方法第壹個參數是顯示的內容,第二個是對話框的風格,比如question,error等,第三個是按鈕的風格,也就是是否包含確定取消等,第四個參數是標題,剩下倆是對話框的大小.

  • 上一篇:之前雙色球每期的順序是誰的?
  • 下一篇:365投票源代碼
  • copyright 2024編程學習大全網