Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / JTable / 6 сообщений из 6, страница 1 из 1
26.04.2006, 15:41
    #33692149
Alexei S
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTable
Господа, помогите пожалуйста новичку. Пишу программу, которая будет выводить рабочее расписание в таблицу. Данные берутся в цикле из String[] массивов. При запуске появляется вот такое вот исключение:

Код: plaintext
1.
2.
Exception in thread "main" java.lang.NullPointerException
        at Assist.<init>(Assist.java: 22 )
        at Assist.main(Assist.java: 35 )

Собствено, текст программы:

Код: plaintext
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.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
mport java.awt.*;
 import  java.util.*;
 import  javax.swing.*;
 import  javax.swing.table.*;

 public   class  Raspisanie  extends  JFrame
{
	 public  DefaultTableModel dtm;  
	 public  String[] data[];
	 public  enum weekdays {mon,tue,wed,third,fri,sa,sund};
	 public  Raspisanie()
	{
		 super ("Raspisanie");
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		

	dtm =  new  DefaultTableModel();
	dtm.setColumnIdentifiers( new  String[]{"Date","WD","Efimov","Ivanov","Ladvez"});		
	
	 for  ( int  i =  1 ; i <  32 ; i ++)
	{
		data[i] =  new  String[]{i + ".05.06","mon","22","0","0"};
		dtm.addRow(data[i]);
	}		
		
	JTable table =  new  JTable(dtm);
		
	getContentPane().add( new  JScrollPane(table));
	setSize( 300 , 300 );
	setVisible(true);
	}
	
	 public   static   void  main(String[] args)
	{
		 new  Raspisanie();
	}
}

Необходимо использовать строковые массивы для простоты последующей обработки данных в таблице (изменение, удаление и т.д.).
Многое пока не задействовано, но это основное, что нужно сделать, уже даже не знаю, что и предпринять.
Заранее Спасибо.
...
Рейтинг: 0 / 0
26.04.2006, 15:46
    #33692169
s-e-r-g-e
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTable
а что в Assist.java?
...
Рейтинг: 0 / 0
26.04.2006, 15:51
    #33692193
Alexei S
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTable
Assist.java = Raspisanie.java
...
Рейтинг: 0 / 0
26.04.2006, 17:02
    #33692451
OU
OU
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTable
Вам надо либо в debug пройти по коду, либо используйя assert установить где баг.

Здесь надо исправить:

Код: plaintext
1.
2.
3.
4.
 for  ( int  i =  0 ; i <  31 ; i ++)
	{
		data[i] =  new  String[]{i + ".05.06","mon","22","0","0"};
		dtm.addRow(data[i]);
	}

Плюс код изменить - лишних обектов не создавать, если значения array не изменяются то immutable object использовать вместо динамической инициализации. А самое главное интерфейс от логики отделить, можно использовать Command + Mediator.
...
Рейтинг: 0 / 0
26.04.2006, 17:06
    #33692466
OU
OU
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTable
сорри, главное забыл, надо сначала инициализировать:

Код: plaintext
data[]= new  String[ 32 ];

and then:

Код: plaintext
1.
2.
3.
4.
 for  ( int  i =  0 ; i <  31 ; i ++)
	{
		data[i] =  new  String[]{i + ".05.06","mon","22","0","0"};
		dtm.addRow(data[i]);
	}
...
Рейтинг: 0 / 0
27.04.2006, 18:54
    #33695715
Alexei S
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JTable
Всем спасибо, отделил создание GUI от функциональной части и вопрос как-то решился сам собой.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / JTable / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]