标签云

微信群

扫码加入我们

WeChat QR Code

I have written a program which uses CardLayout.I want it to show a JPanel and then, based on the user's input, shows a new JPanel, pause for 3 seconds, and then show another JPanel which requires user input.My JPanel requiring user input works fine, and the debugging I've done has shown me that when the program pauses for 3 seconds, the "filler" panels (see below) are being generated, but just not rendered properly.class sylBetween extends JPanel{sylBetween(boolean response, String fileName){super();setSize(1365,725);JLabel cross = new JLabel("+");JLabel display;boolean feedback = myParticipant.getFeedbackTF();if(feedback){String v = syllogism.getSyllValidity(fileName);if(v.equals("V")&&response==true||v.equals("I")&&response==false){display=new JLabel("Correct");}else{display=new JLabel("Incorrect");}add(display);}else{add(cross);}}}and I think the problem is in this bit of code, but I can't figure out why:public void actionPerformed(ActionEvent e) {String name = s[currentTrial].getFN();boolean answerTF = false;if(e.getSource()==s[currentTrial].yes){answerTF=true;}else if(e.getSource()==s[currentTrial].no){answerTF=false;}currentTrial++;if(currentTrial>=s.length){cards.show(this, "end");}else{add(new sylBetween(answerTF,name), "b"+currentTrial);this.revalidate();cards.show(this, "b"+currentTrial);try {Thread.sleep(3000);} catch (InterruptedException e1) {System.err.println(e1);}cards.show(this,"Card"+currentTrial);}}Thanks!