我有一个脚本,它读取并上传图像,通过按下一个按钮来执行。我有另一个按钮,它应该拍摄这个图像并读取元数据。但是,我不知道,如何连接这些事件。所以,这是第一个事件的代码,通过第一个按钮。
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);
}
答案 0 :(得分: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();
..................................
}
答案 1 :(得分:1)
我有一个脚本,它读取并上传图像,通过按下一个按钮来执行。我有另一个按钮,它应该拍摄此图像并读取元数据。但是,我不知道,如何连接这些事件。
你无法连接"事件,因为这不是事件驱动的编程如何工作,但你可以在该状态上改变对象的状态和基本行为。我会把图像作为班级的一个领域。一种解决方案是在第二个JButton的ActionListener中进行if测试以查看image字段是否为null,如果没有,则发布错误JOptionPane,如果它不为null,则提取信息出来了。第二个更好的解决方案是禁用第二个JButton,并在第一个ActionListener中获取图像数据,使用图像对象设置图像字段,然后通过调用按钮上的setEnabled(true)
激活第二个JButton或它的行动。
所以,这是第一个事件的代码,按第一个按钮。
将来,请发布minimal example program,而不是这些小片段。这不是一个完整的代码转储,而是一个小的可编译和可运行的程序,它可以向我们展示您的问题。