|
|
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Господа, а как делается обновление данных в JTable после удаления/ добавления/ корректировки записи? Неужто нужно снова выполнять запрос select и заполнять таблицу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2005, 14:31 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
через модель не катит Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2005, 15:51 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Не могу никак разобраться как работает fire-семейство :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 11:19 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
СыРчерез модель не катит Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 11:40 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Не катит не в смысле "не подходит", а в смысле "не работает". как-то я не так выразился. вызываю эти методы (fire...), а таблица не перерисовывается. все остается как было. mainTable.repaint(); не помогает. мож я их не так использую (fire...)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 11:48 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
если добавил строку (строки): fireTableRowsInserted(...); обновил: fireTableRowsUpdated(...) удалил: fireTableRowsDeleted(..) изменения в структуре таблицы: fireTableStructureChanged() глобальный апдейт :) - fireTableDataChanged() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 12:05 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Это я понял еще вчера, но как использовать? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 12:14 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
... и ничего не происходит :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 12:16 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
СыР... и ничего не происходит :( возьми ВЕСЬ проект (можно без компилированных классов), пакуй его и высылай мне. grasoff@fpestde.net здесь напиши, что уже отправил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 12:25 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
А.Грасоff™ JE СыР... и ничего не происходит :( возьми ВЕСЬ проект (можно без компилированных классов), пакуй его и высылай мне. grasoff@fpestde.net здесь напиши, что уже отправил :)отправил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 12:39 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
в JDBCAdapter нереализован метод fireTableRowsDeleted(...); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 13:47 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
см. аттач с измененным кодом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 14:07 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
именно то, что надо СПАСИБО! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 14:15 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
СыРименно то, что надо я бы так не сказал :) тот вариант моих изменений в твоем коде я привел только для того, чтобы код заработал и принес визуальный эффект :) неправильно то, что fireXXX() вызывается совсем не там - если ты тестил код, наверное, видел маленький визуальный глюк после удаления строки. правильно делать так (рассмотрим только удаление строки из таблицы): - в реализации TableModel (у тебя это JDBCAdapter) определяется метод deleteRow(int rowIndex); - в нем: а) удаляется запись в базе данных ("delete from mtable where id = ?") б) удаляется элемент данных в модели (ArrayList data: data.remove(rowIndex)); в) и именно в этом методе (deleteRow(int rowIndex)) после всех успешных удалений вызываем метод fireTableRowsDeleted(...). либо как вариант fireTableDataChanged() далее у модели должны быть такие же методы addRow(), update(), и еще что надо. и из своего приложения ты уже вызываешь именно эти методы модели, передавая в них нужные параметры. это является правильной (насколько я свинг знаю) работой с таблицей и ее данными. PS я могу и ошибаться :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 09:58 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Что-то у меня такое впечатление что я изобретаю велосипед. Приходится писать модель практически с нуля. Ведь должны же быть готовые модели? Видел несколько примеров моделей, но они были уж слишком простые. Реализованных fireTableRowsInserted(...), fireTableRowsUpdated(...), fireTableRowsDeleted(..) я пока не смог найти (яндекс не рулит). Почему так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 10:44 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Ув. А.Грасоff™ JE, в расширении модели у меня есть метод Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 10:45 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
я не знаю свинг настолько хорошо :) я вообще с desktop-приложениями, обладающими GUI, не работаю (только с консольными). не работаю - в смысле не пишу. основы знаю. не более. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 11:13 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
СыРРеализованных fireTableRowsInserted(...), fireTableRowsUpdated(...), fireTableRowsDeleted(..) я пока не смог найти (яндекс не рулит). Почему так? рулит гугл. а вообще, свинг знает немного людей. основная масса знает основы. и пользуется fireTableDataChanged(). наверное :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 11:15 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Присоединяюсь к СыР, если у кого-нить есть исходники как правильно с таблицей работать - поделитесь плиз, а то один и тот же туториал везде. И можно еще такой вот вопрос. Есть на форме 2 таблицы, выбираешь в одной таблице строку и в зависимости от этого заполняешь вторую таблицу. В базе это 2 таблицы по ключу связанные. Как правильно организовать? Я так понимаю нужно делать 2 разные модели для каждой таблицы и как-то связывать? А.Грасоff™ JE а) удаляется запись в базе данных ("delete from mtable where id = ?") б) удаляется элемент данных в модели (ArrayList data: data.remove(rowIndex)); в) и именно в этом методе (deleteRow(int rowIndex)) Может в шаге 2 делать перезакачку из базы данных в модель? Если несколько пользователей с одной и той же таблицей работают - данные будут свежее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 11:27 |
|
||
|
Refresh таблицы
|
|||
|---|---|---|---|
|
#18+
Liner[ quot А.Грасоff™ JE] а) удаляется запись в базе данных ("delete from mtable where id = ?") б) удаляется элемент данных в модели (ArrayList data: data.remove(rowIndex)); в) и именно в этом методе (deleteRow(int rowIndex)) Может в шаге 2 делать перезакачку из базы данных в модель? Если несколько пользователей с одной и той же таблицей работают - данные будут свежее.[/quot] это уже от потребностей зависит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 11:32 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=32997866&tid=2152659]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 399ms |

| 0 / 0 |
