如何使用netbeans

时间:2016-01-26 10:14:49

标签: java netbeans

我为学生创建了关于试卷的申请。在此应用程序中, JForm 和计时器持续10秒。在 JForm 中有Jtextfield1, JLabel1 和JButton。当学生按下按钮时, JLabel1 将显示倒数从10,9到0。然后, JTextField1 将无法编辑或输入任何数据。并且需要获得“timeup”的消息

以下是我试过的代码。但我没有得到我正在考虑的正确方法。

for(int i= 10; i>=0; i--)
{


    if(i==0)
    {
        jTextField1.enableInputMethods(false);
         JOptionPane.showMessageDialog(null, "time up");


    }
    else
    {
         jLabel3.setText(""+i);
    }
}

1 个答案:

答案 0 :(得分:0)

您可以使用Swing Timer来执行此操作。

E.g:

private void startBtnActionPerformed(ActionEvent evt) {                                         
    startBtn.setEnabled(false);
    textField.setEditable(true);
    timeLbl.setText("10");

    Timer timer = new Timer(1000, new ActionListener() {
        int t = 9;

        @Override
        public void actionPerformed(ActionEvent e) {
            // each second this function will be called

            timeLbl.setText("" + t);
            if (t == 0) {
                startBtn.setEnabled(true);
                textField.setEditable(false);
                timeLbl.setText("");
                JOptionPane.showMessageDialog(Frame.this, "time up");
                ((Timer) e.getSource()).stop();// Stop the timer
            }
            t--;
        }
    });
    timer.start();// Start the timer
}