Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.03.2011, 05:43   #1
grimm_jow
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 25
Радость JList

У меня тут небольшая проблемка, нужен совет спеца....

есть окно(JFrame) на нем четыре JList, задача такая, мы выбираем какое-то значение в 1-м JListe и в зависимости от этого во 2-й JList устанавливается определенный ListData, потом во втором Листе мы тоже выбираем какую-то строчку и в зависимости от этого уже в 3-м Листе тоже ставиться какая то ListData

вот код, уже 2-й час не могу сделать, выкидывается, NullPointerException
Код:
class Verbindungstyp extends JPanel implements ListSelectionListener
{
	JLabel lab2 = new JLabel();
	
	// Тип соединения
	JList tipsoed_list = new JList();
	JScrollPane tipsoed_list_pane = new JScrollPane(tipsoed_list);
	
		
	//Толщины
	JList tolshina_list = new JList();
	JScrollPane tolshina_list_pane = new JScrollPane(tolshina_list);
	
	//кромки
	JList kromki_list = new JList();
	JScrollPane kromki_list_pane = new JScrollPane(kromki_list);
	
	
	//skos
	JList shov_list = new JList();
	JScrollPane shov_list_pane = new JScrollPane(shov_list);
	
	
	//Kartinka
	JLabel picture_lab = new JLabel();

	
	
	public Verbindungstyp()
	{
		
		//Размер панельки
		setBounds(0,0, 500, 180);
		//Размер лэйбла
		lab2.setBounds(0,0, 500, 180);
		//добавляем слой в контейнер
		add(lab2);
		// откулючаем компановку
		setLayout(null); 
		
		Border blackline;
		</span>blackline = BorderFactory.createLineBorder(Color.black);
		TitledBorder title;
		</span>title = BorderFactory.createTitledBorder(blackline, "2. Геометрические параметры шва");
		lab2.setBorder(title);
		
	
		
		// Тип соединения
		lab2.add(tipsoed_list_pane);
		tipsoed_list_pane.setBounds(15, 35, 80, 130);
		tipsoed_list.setListData(new Object[]{"Тавровое","Стыковое","Нахлест","Угловое"});
		tipsoed_list.addListSelectionListener(this);
		tipsoed_list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		
		//Tolshina
		lab2.add(tolshina_list_pane);
		tolshina_list_pane.setBounds(110, 35, 80, 130);
		tolshina_list.addListSelectionListener(this);
		tolshina_list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		
		
		//Kromki
		lab2.add(kromki_list_pane);
		kromki_list_pane.setBounds(205, 35, 80, 130);
		kromki_list.addListSelectionListener(this);
		kromki_list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		//kromki_list.setVisible(false);
		
		
		
		//Shov
		lab2.add(shov_list_pane);
		shov_list_pane.setBounds(300, 35, 80, 130);
				
				
				
		//Risunok
		lab2.add(picture_lab);
		//picture_lab.setBounds(395, 35, 90, 130);
		picture_lab.setBorder(new BevelBorder(BevelBorder.LOWERED));

	}

	public void valueChanged(ListSelectionEvent arg0) 
	{
		try
		{
			if(tipsoed_list.getSelectedValue().equals("Тавровое"))
			{
				tolshina_list.setListData(new Object[]{"Cat1","Cat2","Cat3","Cat4","Cat5"});	
				
				if(tolshina_list.getSelectedValue().equals("Cat2"))
				{
					kromki_list.setListData(new Object[]{"das1","das2","das3","das4"});
				}
				
						
			}
		}
		catch(Exception e)
		{
			System.out.println(e);
		}
	}
}//VIBOR MATERIALOV
grimm_jow вне форума Ответить с цитированием
Старый 04.03.2011, 12:28   #2
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Почитай про ListModel.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JList grimm_jow Общие вопросы по Java, Java SE, Kotlin 0 11.01.2011 00:25