|
Java форум JavaTalks форум программистов
|
|
|
|
| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
Serj.prog : 79 Новичок
|
Дек 20, 2011 16:37 |
|
|
| Здравствуйте! Подскажите, пожалуйста, как в таблице Swing.JTable менять ширину отдельных столбцов, делать отдельные столбцы не редактируемыми? Спасибо. |
|
|
|
 |
ТокиТори : 1066 Завсегдатай
|
Дек 20, 2011 17:48 |
|
|
Ширину столбцов, по-умолчанию, можно менять. Если, конечно, header виден. Если его нет, то поместите таблицу в JScrollPane.
По поводу редактирования ячеек конкретного столбца - у модели таблицы есть метод isCellEditable(row, column), переопределив который, сможете контролировать возможность редактирования. |
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 20, 2011 21:24 |
|
|
| ТокиТори писал(а): |
| Ширину столбцов, по-умолчанию, можно менять.. |
Как настроить ширину столбца таблицы программно. Может быть есть метод вроде setWidth(int columnNumber, int width) ?
Метод isCellEditable позволяет проконтролировать, возможно ли редактирование таблицы. Каким методом в программе можно запретить редактирование таблицы? |
|
|
|
 |
Vantuz-Subhuman : 660 Постоянный посетитель Откуда: издиснейленда
|
Дек 20, 2011 21:54 |
|
|
| Serj.prog писал(а): |
| Метод isCellEditable позволяет проконтролировать, возможно ли редактирование таблицы. Каким методом в программе можно запретить редактирование таблицы? |
У вас на складе 10 пар сапог... Вопрос: сколько пар сапог у вас на складе?
| Код: |
String[] cols = {"col1", "col2", "col3"};
TableModel tm = new DefaultTableModel(cols, 2) {
public boolean isCellEditable(int row, int column) {
return false;
};
};
JTable jt = new JTable(tm) {{
for (int i = 0; i < columnModel.getColumnCount(); i++) {
columnModel.getColumn(i).setPreferredWidth(100);
}
}};
jt.getColumn("col2").setPreferredWidth(50); |
_________________ «One should never underestimate the predictability of stupidity»,
«Never attribute to malice that which can be adequately explained by stupidity» |
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 21, 2011 7:29 |
|
|
| Vantuz-Subhuman писал(а): |
У вас на складе 10 пар сапог... Вопрос: сколько пар сапог у вас на складе? |
С возможностью редактирования разобрался, спасибо.
По поводу регулировки ширины столбца - выяснил, что у класса TablColumn есть метод setPreferredWidth, Видимо надо создать объект TablColumn c нужным параметром width, скормить этот объект конструктору класса TableColumnModel, а полученный объект скормить конструктору класса JTable, наверно должна получиться таблица с требуемой шириной столбца. Попробую сейчас это сделать.
А вообще, по какой литературе лучше изучать работу с классом javax.swing? Я не нашёл ничего лучше, чем архив, лежащий по адресу C:/Program Files(x86)/java/jdk1.6.0_24/src.zip , там лежат папки и файлы с расширением .java, если открыть их текстовым редактором, можно увидеть описание классов, например классов пакета javax.swing. Но это муторно. Есть более удобный источник информации о классах пакетов java.awt, javax,swing? |
|
|
|
 |
Vantuz-Subhuman : 660 Постоянный посетитель Откуда: издиснейленда
|
Дек 21, 2011 9:55 |
|
|
| Serj.prog писал(а): |
| А вообще, по какой литературе лучше изучать работу с классом javax.swing? Я не нашёл ничего лучше, чем архив, лежащий по адресу C:/Program Files(x86)/java/jdk1.6.0_24/src.zip , там лежат папки и файлы с расширением .java, если открыть их текстовым редактором, можно увидеть описание классов, например классов пакета javax.swing. Но это муторно. Есть более удобный источник информации о классах пакетов java.awt, javax,swing? |
Ну, во первых, есть хороший архив, лежащий по адресу:
http://www.google.ru/#sclient=psy-ab&hl=ru&q=java+swing+manual
А во вторых: Г. Шилдт «Swing: руководство для начинающих»
А в третьих: http://docs.oracle.com/javase/6/docs/technotes/guides/swing/index.html
А в четвёртых: http://docs.oracle.com/javase/6/docs/api/index.html?javax/swing/package-summary.html _________________ «One should never underestimate the predictability of stupidity»,
«Never attribute to malice that which can be adequately explained by stupidity» |
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 21, 2011 10:11 |
|
|
За книгу спасибо.
Как менять ширину столбцов разобрался:
Есть объект table класса JTable:
| Код: |
TableColumn tc=table.getColumnModel().getColumn(0);
tc.setPreferredWidth(100);
|
Подскажите, как в программе настроить возможность выделения пользователем ячеек таблицы? Нужно, чтобы ячейки в таблице выделялись так же, как в Microsoft Excel.[/code] |
|
|
|
 |
Vantuz-Subhuman : 660 Постоянный посетитель Откуда: издиснейленда
|
Дек 21, 2011 10:33 |
|
|
| Vantuz-Subhuman писал(а): |
| Код: |
| jt.getColumn("col2").setPreferredWidth(50); |
|
| Serj.prog писал(а): |
Как менять ширину столбцов разобрался:
Есть объект table класса JTable:
| Код: |
TableColumn tc=table.getColumnModel().getColumn(0);
tc.setPreferredWidth(100);
|
|
Да, времени зря не теряете.
| Serj.prog писал(а): |
| Подскажите, как в программе настроить возможность выделения пользователем ячеек таблицы? Нужно, чтобы ячейки в таблице выделялись так же, как в Microsoft Excel.[/code] |
| Код: |
JTable t = new JTable();
t.setColumnSelectionAllowed(false); |
_________________ «One should never underestimate the predictability of stupidity»,
«Never attribute to malice that which can be adequately explained by stupidity»
Последний раз редактировалось: Vantuz-Subhuman (Дек 21, 2011 10:53), всего редактировалось 1 раз |
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 22, 2011 7:28 |
|
|
|
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 26, 2011 18:31 |
|
|
Подскажите, пожалуйста, с помощью какого метода можно определить, к какому столбцу таблицы относятся данные координаты.
Например, есть таблица из 4-х столбцов и 10-ти строк, и есть координаты курсора: X=55, Y=71. С помощью какого метода определить, на каком столбце таблицы находиться курсор?
Спасибо. |
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 26, 2011 18:37 |
|
|
| Уже нашёл: int columnAtPoint(Point point) |
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 26, 2011 18:40 |
|
|
| А как задать цвет определённого столбца таблицы? |
|
|
|
 |
seniorpan : 16 Новичок
|
Дек 26, 2011 19:11 |
|
|
|
|
|
|
 |
Serj.prog : 79 Новичок
|
Дек 26, 2011 22:34 |
|
|
| seniorpan писал(а): |
| TableCellRenderer |
Ага, утром попробую. |
|
|
|
 |
Skipy : 4801 Я тут живу! Откуда: Москва, Россия
|
Дек 27, 2011 10:08 |
|
|
|
|
|
|
 |
|
|
Страница 1 из 2 На страницу 1, 2 След. |
Список форумов
-> Swing, AWT & SWT |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|