问题描述
怎样在java中实现点击一个按钮,弹出新对话框以输入信息,退出新对话框后原对话框不消失
解决方案
解决方案二:
使用swingJFrame类用于创建窗体JDialog类用于创建对话框JOptionPane类用于弹出各种对话框JOptionPane类的showInputDialog方法用来弹出一个输入对话框。
解决方案三:
importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JOptionPane;publicclassTest{publicstaticvoidmain(String[]args){JFrameframe=newJFrame("Title");JButtonbutton=newJButton("Openinputdialog");frame.getContentPane().add(button);button.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEvente){Stringstr=JOptionPane.showInputDialog(null,"Pleaseinputyourmessage");System.out.println(str);}});frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400,400);frame.setLocationRelativeTo(null);frame.setVisible(true);}}
解决方案四:
importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JOptionPane;publicclassTest{publicstaticvoidmain(String[]args){JFrameframe=newJFrame("Title");JButtonbutton=newJButton("Openinputdialog");frame.getContentPane().add(button);button.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEvente){Stringstr=JOptionPane.showInputDialog(null,"Pleaseinputyourmessage");System.out.println(str);}});frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400,400);frame.setLocationRelativeTo(null);frame.setVisible(true);}}
解决方案五:
我不清楚LS到底认真看过API没有?JOptionPane.showInputDialog(null,"Pleaseinputyourmessage");为什么第一个参数能用null?第一个参数用来指定弹出的窗体的拥有者的窗体,指明是哪个窗体弹出来的,虽然为null时JOptionPane会使用一个默认的窗体(不是自己创建的任何一个窗体)作为拥有者,但是,当切换窗体时,会发生一些不是我们要的效果,具体什么效果自己多试几次就知道了。
解决方案六:
引用4楼zssazrael的回复:
我不清楚LS到底认真看过API没有?JOptionPane.showInputDialog(null,"Pleaseinputyourmessage");为什么第一个参数能用null?第一个参数用来指定弹出的窗体的拥有者的窗体,指明是哪个窗体弹出来的,虽然为null时JOptionPane会使用一个默认的窗体(不是自己创建的任何一个窗体)作为拥有者,但是,……
不要随便乱误导别人Theparameterstothesemethodsfollowconsistentpatterns:parentComponentDefinestheComponentthatistobetheparentofthisdialogbox.Itisusedintwoways:theFramethatcontainsitisusedastheFrameparentforthedialogbox,anditsscreencoordinatesareusedintheplacementofthedialogbox.Ingeneral,thedialogboxisplacedjustbelowthecomponent.Thisparametermaybenull,inwhichcaseadefaultFrameisusedastheparent,andthedialogwillbecenteredonthescreen(dependingontheL&F).
解决方案七:
引用4楼zssazrael的回复:
我不清楚LS到底认真看过API没有?JOptionPane.showInputDialog(null,"Pleaseinputyourmessage");为什么第一个参数能用null?第一个参数用来指定弹出的窗体的拥有者的窗体,指明是哪个窗体弹出来的,虽然为null时JOptionPane会使用一个默认的窗体(不是自己创建的任何一个窗体)作为拥有者,但是,……
。。。。。。。。。