|
|
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
Всем добрый день.Есть таблица,которая расширяет AbstractTableModel. Мне нужно вставить JComboBox в один из столбцов этой таблицы,как это сделать? Делаю так Код: plaintext 1. 2. 3. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Спасибо Как это все работает фиг его знает,может кто-то пояснит последовательность действий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:55 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
написать собс. класс, расширяющий AbstractTableModel, в методе setValueAt(Object value, int row, int col) {} отправлять изменения Если комбо не доступен, то в методе public boolean isCellEditable(int row, int col) {} на номер столбца возвращать тру ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 14:13 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
peter6636 Код: plaintext 1. 2. 3. Как это все работает фиг его знает,может кто-то пояснит последовательность действий. Тебе надо не render изменять а Editor. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 15:05 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
Так мне это все делать в модели AbstractTableModel или в классе реализующем интерфейс TableСellEditor. Если в TableСellEditor,тогда как таблица будет знать что в ячейке новое заначение появилось,че-то я запутался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 16:37 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
peter6636Так мне это все делать в модели AbstractTableModel или в классе реализующем интерфейс TableСellEditor. Если в TableСellEditor,тогда как таблица будет знать что в ячейке новое заначение появилось,че-то я запутался. TableСellEditor назначается на столбец. AbstractTableModel - для всей таблицы. TableColumnModel tcm=jTable1.getColumnModel(); TableColumn tc=tcm.getColumn(2); tc.setCellEditor(new DefaultCellEditor(myComboBox)); для столбца, чтобы вместо ячейки отображался комбобокс class MyTableModel extends AbstractTableModel {...} MyTableModel myModel = new MyTableModel(); JTable table = new JTable(myModel); модель, чтобы отлавливать изменения в таблице, в тч и комбобокса Ну я так по крайней мере делаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 16:46 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
adf peter6636Так мне это все делать в модели AbstractTableModel или в классе реализующем интерфейс TableСellEditor. Если в TableСellEditor,тогда как таблица будет знать что в ячейке новое заначение появилось,че-то я запутался. TableСellEditor назначается на столбец. AbstractTableModel - для всей таблицы. TableColumnModel tcm=jTable1.getColumnModel(); TableColumn tc=tcm.getColumn(2); tc.setCellEditor(new DefaultCellEditor(myComboBox)); для столбца, чтобы вместо ячейки отображался комбобокс class MyTableModel extends AbstractTableModel {...} MyTableModel myModel = new MyTableModel(); JTable table = new JTable(myModel); модель, чтобы отлавливать изменения в таблице, в тч и комбобокса Ну я так по крайней мере делаю. Я это уже все давно сделал,у меня нифига не работает,ячейка не редактируется,хотя в сэтВалуэ возвращает тру ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 17:03 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
A в setValueAt(){} че делаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 18:11 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
Короче сделал так: Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Чтобы было еще яснее покажу исходную и результирующую таблицу Исходная: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 18:49 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
Вот результирующая: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 18:51 |
|
||
|
JComboBox in JTable
|
|||
|---|---|---|---|
|
#18+
Теперь про метод setValueAt. Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext 1. 2. 3. 4. 5. И вот тут похоже где-то гемор,но не могу понять где Код: 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. 37. 38. 39. 40. 41. 42. 43. 44. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 18:59 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33021814&tid=2152545]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 359ms |

| 0 / 0 |
