【问题标题】:one jbutton doing different actions when clicked again再次单击时,一个 jbutton 执行不同的操作
【发布时间】:2019-10-06 08:28:27
【问题描述】:

我需要相同的JButton 在再次单击后执行不同的操作。就像我第一次单击按钮时,我的JTextField 的第一行会出现一个文本,然后我第二次单击它,如果文本字段的第二行会出现一个文本。我该怎么做?

这是我的代码顺便说一句:

private void addActionPerformed(java.awt.event.ActionEvent evt) {                                    
    String items1 =(String)list.getSelectedItem();
    String qty1 = qty.getText();
    String price1 = price.getText();


    int qty2 = Integer.parseInt(qty1);
    int price2 = Integer.parseInt(price1);

    if(evt.getSource() == add){
        order1.setText(Integer.toString(qty2));
        order2.setText(Integer.toString(price2));
        order3.setText(items1);
    }

我真的不知道下一步该做什么。

这是设计 GUI 的图片:http://prntscr.com/pfh96z

【问题讨论】:

    标签: java swing user-interface jbutton


    【解决方案1】:

    获取布尔值 isClickedOnce 并在单击按钮时更改其状态

    private Boolean isClickedOnce = false;
    //..
    
    private void addActionPerformed(java.awt.event.ActionEvent evt) { 
        if(!isClickedOnce) {
            //first click
            //..
        } else {
            //second click
            //..
        }
        isClickedOnce = !isClickedOnce;
    }
    

    注意:它会将每个奇数点击视为第一次点击,将每个偶数点击视为第二次点击。它将在您的第一行和第二行之间切换。

    如果您的情况不同,假设您有 n 行,上述过程将不起作用,您可能想对列表执行类似操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      • 2023-02-10
      • 1970-01-01
      • 2016-06-17
      • 2016-11-20
      • 2013-08-18
      相关资源
      最近更新 更多