как получить пользовательскую редакцию из многочисленных компонентов свинга? - PullRequest
1 голос
/ 08 сентября 2010

У меня есть JFrame с кучей разных JTextField и так далее. Как собрать данные, введенные пользователем, без настройки действий для каждого из этих компонентов?

Примечание. Я создаю этот JTextField с использованием встроенного кода, например:

    layout.row().grid(new JLabel("Density")).add(new JTextField("1"))
            .spanRow();
    layout.row().grid(new JLabel("Minimal size"))
            .add(new JTextField("1")).spanRow();

Ответы [ 2 ]

1 голос
/ 08 сентября 2010

Класс Swing Utils имеет несколько удобных методов, облегчающих эту задачу:

List<JTextField> components = SwingUtils.getDescendantsOfType(JTextField.class, container, true);

for (JTextField component: components)
{
    // add custom code here
}
1 голос
/ 08 сентября 2010

Вам, вероятно, потребуется перебрать дочерние элементы каждого контейнера, проверить, является ли он экземпляром JTextField, а затем прочитать содержимое, используя метод getText.

...