TestActionListener - "прослушиватель" события нажатия на кнопку - обработчик нажатия на кнопку в яваjava программа пример
Primary tabs
Forums:
Коренная тема кода здесь = http://fkn.ktu10.com/?q=node/2256
а рассуждения по решению задачи здесь = http://fkn.ktu10.com/?q=node/2036
------------дальше код------------------
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JFileChooser ;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/*конечной задачей этого обработчика является запись
* значения пути к папке, указанной пользователем
* в статическое поле MyData.path + запуск функции которая
* как раз и выполнит поставленную задачу
* обработатывать - и вообще работать с файлами будет класс DoIt -
* так что , вообще говоря можно было бы сразу передать
* полученный из диалога путь к папке через локальную переменную -
* но мы использовали глобальное хранилище - MyData -
*а именно его статическое поле path*/
public class TestActionListener implements ActionListener { // обработчик событий.
public void actionPerformed(ActionEvent e) {
//Код, который нужно выполнить при нажатии
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new java.io.File("."));
chooser.setDialogTitle("choosertitle");
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(false);
if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
System.out.println("getCurrentDirectory(): " + chooser.getCurrentDirectory());
MyData.path = ""+ chooser.getSelectedFile(); // отлавливаем "путь в нашу глобальную переменную
System.out.println("getSelectedFile() : " + chooser.getSelectedFile()); // аналогично можно поймать и файл
// MyData.path = ""+chooser.getSelectedFile(); // при желании -отловим файл
} else {
System.out.println("No Selection ");
}
if (MyData.path!="")
{
//Код, который нужно выполнить при нажатии
String message = "путь получен)))="+MyData.path ;
JOptionPane.showMessageDialog(new JFrame(), message, "Dialog",
JOptionPane.ERROR_MESSAGE);
DoIt Handler = new DoIt(MyData.path); // ВЫЗЫВАЕМ ЛОГИКУ ПРОГРАММЫ
// ПЕРЕДАВ ПУТЬ К ПАПКЕ, в которой следует осуществить форматирование файлов
}
else
{
//Код, который нужно выполнить при нажатии
String message = "УКАЖИТЕ ПАПКУ !!!";
JOptionPane.showMessageDialog(new JFrame(), message, "Dialog",
JOptionPane.ERROR_MESSAGE);
}
//MyData.path = new String(data);
}
}
- Log in to post comments
- 3668 reads