Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JFileChooser - открытие картинки! Загрузка картинки на JButton 
V
    Опции темы
TWoVKP
Дата 13.5.2009, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 29.4.2009

Репутация: 1
Всего: 1



Ну вообшем проблема такая: есть два простеньких класса, в одном создаётся обыкновенный JFrame, на нём разположено две кнопки!
По клику на одной кнопке вызывается дрrгой класс в котором создаётся JFileChooser для открытия картинки, потом выбираем любую картину щёлкаем OK и картинка должна передаться в основной класс, а в основном классе уже размещаться на второй кнопке!

Оба класса работают без проблем smile , проблема заключается в том - как передать выбранную JFileChooser'-ом картинку в основной класс???  smile 
Остальное как всё реализовать я знаю, только вот это что-то у меня не получается!

 smile 

Заранее огромное спасибо!!!
 smile  smile  smile 
PM MAIL   Вверх
goodday1941
Дата 13.5.2009, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 709
Регистрация: 16.7.2006
Где: Украина, Киев

Репутация: 8
Всего: 9



ну JFileChooser  имеет метод getSelectedFile который возвращает выбранный файл

Код

class Main{
//bla bla some JFrame code  
 public void someMethod(){
  Chooser chooser = new Chooser();
File f =  chooser.getImage();
}
}

class Chooser{
   public File getImage(){
JFileChooser chooser = new JFileChooser();
    ExampleFileFilter filter = new ExampleFileFilter();
    filter.addExtension("jpg");
    filter.setDescription("JPG Images");
    chooser.setFileFilter(filter);
    if(chooser.showOpenDialog(parent) == JFileChooser.APPROVE_OPTION) {
            return chooser.getSelectedFile();
    }
    return null;
}
}


самый примитивный вариант

Добавлено через 3 минуты и 49 секунд
вообще я бы делал эту штуку через написания собственного ивента..

то есть класс чусером после того как у него выбран файл бросает ивент.. соответственно класс номер один который с двумя кнопками ловит эти ивенты 

Это сообщение отредактировал(а) goodday1941 - 13.5.2009, 13:13


--------------------
SCJP 6
PM MAIL ICQ Skype GTalk   Вверх
TWoVKP
Дата 13.5.2009, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 29.4.2009

Репутация: 1
Всего: 1



Я так же и пробовал, но всё время получаю две ошибки:

первая:
Код

cannot be applied to ()


и вторая
Код

cannot find symbol


В чём проблема подскажите!!!

Добавлено через 10 минут и 9 секунд
Вот вроде обе ошилки исправил, но проблема теперь в другом, картинка передаётся ка тип "File", можно ли такой тип передать консктруктору JButton для размешения на кнопке загруженной картинки???
PM MAIL   Вверх
TWoVKP
Дата 13.5.2009, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 29.4.2009

Репутация: 1
Всего: 1



В основной класс файл передался, а как теперь его можно переделать в тип ImageIcon ну или хотя бы в String??? smile 

Може кто знает, может встречали где нибуль как это делается??? smile 
Помогите срочно надо!!! Pleas


PM MAIL   Вверх
TWoVKP
Дата 13.5.2009, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 29.4.2009

Репутация: 1
Всего: 1



А каким образом можно реализовать чтобы передавался не тип "File"  а только имя и путь выбраного чусером файла???
PM MAIL   Вверх
TWoVKP
Дата 13.5.2009, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 29.4.2009

Репутация: 1
Всего: 1



Всё сам решил проблему!

Всем спасибо за помощь!

Вот кусочек кода, может еому нибуль понадобится:
JFileChooser будет возвращать абсолютный путь к выбранному файлу:

Код

public class BildBetrachter
{
    static public String openFile() 
    {
        JFileChooser LoadImage = new JFileChooser();
        try
        {
            String file = LoadImage.getSelectedFile().getAbsolutePath();
            BufferedReader br = new BufferedReader(new FileReader(file));
        }
        catch (Exception e)
        {
        }
        LoadImage.setCurrentDirectory(new File("."));
        LoadImage.showDialog(null, "Load Image");
        
        return DateiBild.getSelectedFile().getAbsolutePath();
    }



Тема закрыта!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0431 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.