Проблемы с графическим интерфейсом работают нормально - PullRequest
0 голосов
/ 23 марта 2011

Сообщение для Riaan,

Я получаю те же результаты.

Вот вершина, куда я добавил список массивов:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;
import java.util.List;

public class FVolume extends JFrame implements ActionListener{
    private JTabbedPane jtabbedPane;
    private JPanel Customers;
    private List<Customer> customers = new ArrayList<Customer>();
    JTextArea NameTextCustomers, ExistTextCustomers, NameTextContractors, ExistTextContractors;

Теперь вот где я изменил actionListener

    AddCustomers.addActionListener(new ActionListener() 
    {   
        public void actionPerformed(ActionEvent e) 
        { 
        Customers.add(new Customer("Customer")); 
    } 
        }); 

1 Ответ

0 голосов
/ 23 марта 2011

Простейшим вариантом, вероятно, будет добавление поля списка:

public class FVolume extends JFrame implements ActionListener{
private JTabbedPane jtabbedPane;
private JPanel Customers;
private List<Customer> customers = new ArrayList<Customer>();
...

Затем измените свой actionListener на это:

AddCustomers.addActionListener(new ActionListener() 
    {   
    public void actionPerformed(ActionEvent e)
    {
    customers.add(new Customer("Customer"));
}
    });

С помощью этого списка вы теперь можете просто очистить текстовую область и отобразить клиентов из этого списка при нажатии кнопки обновления.

Лучшим способом было бы использовать JDialog для всплывающего окна клиента (а не извлекать его из конструктора Customer), а затем зарегистрировать прослушиватель в диалоговом окне, чтобы просто уведомить основное приложение о сохранении нового клиента. Затем просто добавьте нового клиента в текстовую область (кнопка обновления не требуется). Это немного сложнее, так как вам нужно запустить PropertyChangeEvent из диалогового окна Customer при сохранении (среди других изменений, которые вам нужно будет сделать).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...