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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> xml -> swing, xml swing java  
:(
    Опции темы
akopyans
Дата 18.5.2010, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Всем привет.

Решил написать программу для динамического создания свинговых окошек на основе данных из xml.

Вообще смысла наверное в данном методе нет и скорее всего он никому не нужен. 
В процессе разработки столкнулся с проблемой. 
не могу положить дочерний элемент в родительский, так как они создаются в отдельных методах. 
Подскажите как лучше реализовать, мозги с ООП работают плохо. может после ваших примеров заработают немного иначе.
 
Код

public InputStream getxml() {
        InputStream stream = null;
        try {
            stream = new BufferedInputStream(new FileInputStream(file_path));
        } catch (Exception e) {
        }
        return stream;
    }

    public Document getDoc(InputStream stream) {
        Document doc = null;
        try {
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            DocumentBuilder db = dbf.newDocumentBuilder();
            doc = db.parse(stream);
        } catch (Exception e) {
        }
        return doc;
    }

    public void createFrame(Element elem) {
        JFrame frame = new JFrame();
        NamedNodeMap nnm = elem.getAttributes();
        for (int i = 0; i < nnm.getLength(); i++) {
            Node n = nnm.item(i);
            if (n.getNodeName().equals("title")) {
                frame.setTitle(n.getNodeValue());
            }
            if (n.getNodeName().equals("visible")) {
                frame.setVisible(n.getNodeValue().equals("true"));
            }
            if (n.getNodeName().equals("size")) {
                int x = 0;
                int y = 0;
                String sdimension = n.getNodeValue();
                try {
                    x = Integer.valueOf(sdimension.substring(0, sdimension.indexOf(",")).trim());
                    y = Integer.valueOf(sdimension.substring(sdimension.indexOf(",") + 1).trim());
                } catch (Exception e) {
                }
                frame.setSize(x, y);
            }
        }
        frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
    }

    public void createPanel() {
        JPanel panel = new JPanel();
        ...
    }


PM MAIL   Вверх
akopyans
Дата 18.5.2010, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Откомментит кто нибудь ? или тема не имеет смысла ?
PM MAIL   Вверх
jk1
Дата 18.5.2010, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Я бы сменил тип возвращаемого значения в методах, например
Код

public JFrame createFrame(Element elem)
...
public JPanel createPanel()

тогда пользующийся ими код сможет делать что-то вроде
Код

JFrame frame = createFrame(myElem);
frame.add(createPanel());



--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
akopyans
Дата 18.5.2010, 20:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



спасибо. сразу не догадался. хотя такой метод использовал уже.

пока не известно можно ли будет все реализовать. так что вопросы частенько сюда буду выкладывать. 

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

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

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

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


 




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


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

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