java - JDialog not showing up -


i have code jdialog:

public void createui() {      contentpane2 = new jpanel();     contentpane2.setlayout(new flowlayout());     contentpane2.setbackground(uimanager.getcolor("menu"));     contentpane2.setborder(new emptyborder(5, 5, 5, 5));     setcontentpane(contentpane2);      contentpane2.setlayout(new formlayout(new columnspec[] {             columnspec.decode("149px"),             columnspec.decode("max(38dlu;default):grow"),             formfactory.related_gap_colspec,             columnspec.decode("max(48dlu;default)"),             formfactory.related_gap_colspec,             formfactory.default_colspec,             formfactory.related_gap_colspec,             columnspec.decode("46px:grow"),             formfactory.related_gap_colspec,             formfactory.default_colspec,},         new rowspec[] {             formfactory.related_gap_rowspec,             rowspec.decode("max(20dlu;default)"),             formfactory.related_gap_rowspec,             rowspec.decode("14px"),             formfactory.unrelated_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,             formfactory.related_gap_rowspec,             formfactory.default_rowspec,}));      jlabel lbladdnewtask = new jlabel("please fill new task information", swingconstants.center);     lbladdnewtask.setverticalalignment(swingconstants.center);     lbladdnewtask.settooltiptext("");     lbladdnewtask.setopaque(true);     lbladdnewtask.setignorerepaint(true);     lbladdnewtask.setfont(new font("verdana", font.plain, 11));     lbladdnewtask.setborder(new titledborder(uimanager.getborder("titledborder.border"), "", titledborder.leading, titledborder.top, null, color.yellow));     lbladdnewtask.setbackground(new color(255, 255, 255));     lbladdnewtask.setalignmentx(0.5f);     contentpane2.add(lbladdnewtask, "1, 2, 8, 1, fill, fill");      jlabel lblchooseactivity = new jlabel("choose activity :");     contentpane2.add(lblchooseactivity, "1, 6, center, default");      final jcombobox combobox_1 = new jcombobox();     combobox_1.additem("diagnosis");     combobox_1.additem("treatment");     combobox_1.additem("medication");     combobox_1.additem("rehab");     combobox_1.additem("discharge");     contentpane2.add(combobox_1, "2, 6, left, default");      jlabel lblname = new jlabel("new task name :");     contentpane2.add(lblname, "1, 10, center, default");      textfield = new jtextfield();     contentpane2.add(textfield, "2, 10, fill, default");     textfield.setcolumns(10);      jlabel lblday = new jlabel("day :");     contentpane2.add(lblday, "1, 14, center, default");      final jcombobox combobox = new jcombobox();     combobox.additem("1");     combobox.additem("2");     combobox.additem("3");           contentpane2.add(combobox, "2, 14, left, default");      final jcheckbox chckbxnewcheckbox = new jcheckbox("complication");     contentpane2.add(chckbxnewcheckbox, "2, 18");      jbutton btnadd = new jbutton("add");     btnadd.addactionlistener(new actionlistener() {         public void actionperformed(actionevent arg0) {              system.out.println(combobox_1.getselecteditem());   //getactivity             //system.out.println(textfield.gettext());   //gettaskname              if (chckbxnewcheckbox.isselected()){//if complication                 system.out.println("*"+textfield.gettext());//settaskname have * sign                  jbutton btn_6222 = new jbutton("bakar bakar");              //   btn_6222.addactionlistener(deleteaction);                 bigpanel.add(btn_6222, "4, 3");                 bigpanel.updateui();                   }             else{                 system.out.println(textfield.gettext());                     }             system.out.println(combobox.getselecteditem());  //getday             //system.out.println(chckbxnewcheckbox.gettext());//getcheckeditem                string filename = "c:" + file.separator + "text file addcheckup class.txt";                 file f = new file(filename);                 printwriter pw = null;                 try {                      pw = new printwriter(f);                                     pw.println(combobox_1.getselecteditem());                     if (chckbxnewcheckbox.isselected()){//if complication                         pw.println("*"+textfield.gettext());                          }                     else{                         pw.println(textfield.gettext());                          }                     pw.println(combobox.getselecteditem());                     pw.flush();                  } catch (filenotfoundexception e) {                     e.printstacktrace();                 }finally{                     //no matter happen. close output stream always.                     //note closing printer not throw ioexception                     if(pw!=null){                         pw.close();                     }               }                   joptionpane.showmessagedialog(null,"successfully added !");         }       });     contentpane2.add(btnadd, "8, 20");          jdialog dialog = new jdialog();         dialog.settitle("add new task");         dialog.setdefaultcloseoperation(jframe.exit_on_close);         dialog.setbounds(470, 180, 534, 323);         dialog.add(contentpane2);         dialog.setmodal(true);         dialog.setvisible(true); } 

this code actionperformed of button. when button clicked, show jdialog createui() above

jbutton button_3 = new jbutton("add");//add row     button_3.addactionlistener(new actionlistener() {         public void actionperformed(actionevent e) {               createui();          }      }); 

the problem when click button, jdialog not showing up. try figure out what's wrong code not find it. please @ possible solution.

try calling

dialog.pack(); 

before setting visible.


Comments