Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 28.01.2014
Сообщений: 6
1

Изменение значения элемента XML через JTextField

29.03.2014, 21:50. Показов 1652. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Пытаюсь сделать внешний редактор для определенных XML файлов. В цикле прочитать значения XML элементов, а потом вывести их в виде JTextField, с возможность изменения прямо в окне программы. Столкнулся с проблемой, а как вообще можно изменить значение локальной переменной через обработчик события?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public void parseXML() {
//...Разный код...
   JPanel tempP = new JPanel((new FlowLayout(FlowLayout.LEFT)));
   tempP.add(new JLabel(tagLevel.get(j).getName()));
//Текстовое поле отображает текст элемента. 
   JTextField  tempTextField=new JTextField(tagLevel.get(j).getText());
   tempP.add(tempTextField);
   tempTextField.setColumns(10);
//Попытка передать элемент в обработчик события. 
   tempTextField.addActionListener(new TextFListener(tagLevel.get(j)));
}
//Создаю внутренний класс для обработки события. 
    public class TextFListener implements ActionListener {
        Element element;
        public TextFListener(Element elem1){
// Пытаюсь присвоить внутреннему элементу класса внешний элемент.
            element = elem1;
        }
        public void actionPerformed(ActionEvent e) {
            JTextField eText = (JTextField)e.getSource();
//Пытаюсь изменить значение на вводимое.  
            element.setText(eText.getText());
// Но меняется только внутриклассовый element. Это я так понимаю потому что по значению
// лишь передается?
        }}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2014, 21:50
Ответы с готовыми решениями:

Изменение элемента XML
Вроде научился, создавать , добавлять ..но как изменить значение чето не пойму Есть XML: <?xml...

Изменение элемента XML
Да, таких тем уже много.Я прочитал, попробовал сделать но не выходит. У меня есть элементы XML ...

Изменение значения XML литерала
Имеем XML файл настроек: <Settings> <Position> <Left>689</Left> <Top>340</Top> ...

XML изменение значения между тегами
XMLDocument1.LoadFromFile(ExtractFilePath(paramstr(0))+'home.xml');...

2
126 / 113 / 56
Регистрация: 05.12.2012
Сообщений: 463
03.04.2014, 11:04 2
в обработчике событий можно оперировать переменными из вне только если они константы или объявлены глобально, вроде как... Так что можно поступить так:
1) создавайте class Element и в нем функции типа setValue(el). Тогда его можно будет объявить final и юзать в обработчике. Или
2) объявите Element element; глобально, тогда его тоже можно будет использовать в обработчике.

P.S.: Наверняка есть другие способы, но я нуб и к этим способам пришёл методом тыка.
0
5 / 5 / 1
Регистрация: 04.03.2014
Сообщений: 20
03.04.2014, 15:48 3
Цитата Сообщение от kushok Посмотреть сообщение
в обработчике событий можно оперировать переменными из вне только если они константы или объявлены глобально, вроде как... Так что можно поступить так:
1) создавайте class Element и в нем функции типа setValue(el). Тогда его можно будет объявить final и юзать в обработчике. Или
2) объявите Element element; глобально, тогда его тоже можно будет использовать в обработчике.
final - это и есть константа, так что "оперировать" ими не получится
Но тут другая тема.
Java
1
2
//Текстовое поле отображает текст элемента. 
JTextField  tempTextField=new JTextField(tagLevel.get(j).getText());
Вы всё верно передаёте и изменяете, однако, изменив элемент в обработчике, не записываете это значение обратно в tempTextField.
0
03.04.2014, 15:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.04.2014, 15:48
Помогаю со студенческими работами здесь

XML, извлечение значения элемента
XML, извлечение значения элемента Среда Visual Basic STUDIO’2010 Professional Как поставить...

Преобразование значения элемента xml в float
Добрый день. Возник вопрос. Работаю с файлом xml (сохраняю и считываю в нем информацию)....

Изменение значения value элемента input
Нужна помощь. Есть запрос в БД через PHP, на выборку данных которые совпадают с введенным в поле...

Отловить изменение текста в JtextField
Добрый день. Появилась проблема. У Text в awt было событие TextValueСhange. как реализовать ее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru