Salve,
devo fare in modo che un utente possa selezionare un particolare file; una volta selezionato verrà richiamato un metodo di un altra classe a cui passo il path del file.
In questa classe che ho fatto
codice:
package it.gui;
import it.gui.controller.SelectMessageController;
import java.io.File;
import javax.swing.filechooser.*;
import javax.swing.JFileChooser;
public class SelectMsgFrame extends javax.swing.JFrame {
static SelectMessageController _controller = null;
public SelectMsgFrame(SelectMessageController theController) {
_controller = theController;
initComponents();
}
private void initComponents() {
_mainPnl = new javax.swing.JPanel();
_titlePnl = new javax.swing.JPanel();
_titleSeperator = new javax.swing.JSeparator();
_titleLbl = new javax.swing.JLabel();
_centerPnl = new javax.swing.JPanel();
_chooser = new javax.swing.JFileChooser();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
_mainPnl.setLayout(new java.awt.BorderLayout());
_titlePnl.setLayout(new java.awt.BorderLayout());
_titlePnl.add(_titleSeperator, java.awt.BorderLayout.SOUTH);
_titleLbl.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
_titleLbl.setText("Store Message");
_titlePnl.add(_titleLbl, java.awt.BorderLayout.CENTER);
_mainPnl.add(_titlePnl, java.awt.BorderLayout.NORTH);
_chooser.removeChoosableFileFilter (_chooser.getAcceptAllFileFilter ());
_chooser.setApproveButtonText("Send");
_chooser.addChoosableFileFilter (new FileFilter () {
public boolean accept (File f) {
return f.isDirectory() || f.getName().endsWith (".txt");
}
public String getDescription () {
return "File TXT";
}
});
int returnVal = _chooser.showOpenDialog(null);
if(returnVal == JFileChooser.APPROVE_OPTION) {
sendFile();
}
_centerPnl.setLayout(new java.awt.BorderLayout());
_centerPnl.add(_chooser, java.awt.BorderLayout.CENTER);
_mainPnl.add(_centerPnl, java.awt.BorderLayout.CENTER);
getContentPane().add(_mainPnl, java.awt.BorderLayout.CENTER);
pack();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new SelectMsgFrame(_controller).setVisible(true);
}
});
}
//GEN-BEGIN:variables
// Variables declaration - do not modify
private javax.swing.JPanel _centerPnl;
private javax.swing.JPanel _mainPnl;
private javax.swing.JLabel _titleLbl;
private javax.swing.JPanel _titlePnl;
private javax.swing.JSeparator _titleSeperator;
private javax.swing.JFileChooser _chooser;
// End of variables declaration//GEN-END:variables
private void sendFile(){
_controller.send(_chooser.getSelectedFile().getAbsolutePath());
}
}
1) come faccio a fare in modo che quando viene inviato il path si chuda il frame?
2) come posso gestire il secondo pulsantino che mi esce "Annulla"?
Grazie