【问题标题】:How do I connect one event from one button to another button?如何将一个事件从一个按钮连接到另一个按钮?
【发布时间】:2016-01-11 03:43:02
【问题描述】:

我有一个脚本,它读取并上传图像,只需按一个按钮即可执行。我有另一个按钮,它应该拍摄这张图片并读取元数据。但是,我不知道如何连接这些事件。所以,这是第一个事件的代码,按第一个按钮。

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {         
    JFileChooser chooser = new JFileChooser();
    chooser.showDialog(null, "Open image");
    File file = chooser.getSelectedFile();
    String filename = file.getAbsolutePath();
    JTextField_path.setText(filename);

    ImageIcon icon= new ImageIcon(filename);
    jLabel_image.setIcon(icon);
}                                        

【问题讨论】:

    标签: java swing events button


    【解决方案1】:

    第一个按钮代码

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    ..................................
    //Set selected path in text field.
    JTextField_path.setText(filename);
    ..................................
    }
    

    你有另一个按钮代码,比如

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
    ..................................
    //Now read the above selected image by getting path from text field
    String path = JTextField_path.getText();
    ..................................
    }
    

    【讨论】:

      【解决方案2】:

      我有一个脚本,它读取并上传图像,只需按一个按钮即可执行。我有另一个按钮,它应该拍摄这张图片并读取元数据。但是,我不知道如何连接这些事件。

      您不能“连接”事件,因为这不是事件驱动编程的工作方式,但您可以更改对象的状态并根据该状态建立行为。我会让图像成为班级的一个领域。一种解决方案是在第二个 JButton 的 ActionListener 中进行 if 测试,以查看图像字段是否为空,如果不是,则发布错误 JOptionPane,如果不为空,则从中提取信息。第二个更好的解决方案是禁用第二个 JButton,并在您的第一个 ActionListener 中,获取图像数据,使用图像对象设置图像字段,然后通过在按钮或其操作上调用 setEnabled(true) 激活第二个 JButton .

      所以,这是第一个按钮的第一个事件的代码。

      以后请发minimal example program,而不是这些小sn-ps。这不是一个完整的代码转储,而是一个可编译和可运行的小程序,为我们演示您的问题。

      【讨论】:

      • 好的,下次我就这样发帖,谢谢指教。
      猜你喜欢
      • 2019-07-05
      • 1970-01-01
      • 2011-11-23
      • 2020-08-01
      • 2020-02-20
      • 2020-03-03
      • 1970-01-01
      • 2019-03-03
      • 1970-01-01
      相关资源
      最近更新 更多