это мой первый пост здесь, и я надеюсь, что смогу кое-что понять.В настоящее время у меня есть таблица SWT с 4 строками и кнопкой на строку, которую я могу динамически добавлять и удалять.Я создаю новый редактор таблиц для каждой строки, чтобы создать каждую кнопку при добавлении строк, и располагаю кнопку вместе с редактором, когда строки удаляются.Таблица также может перемещать строки вверх и вниз нажатием кнопки вверх и вниз, и я реализовал это следующим образом:
- Сохранение данных выбранного элемента таблицы
- Удаление таблицыэлемент, который удаляет кнопку и ее редактор через прослушиватель dispose.
- Создание элемента таблицы по индексу, по которому она идет, индекс + 1 при понижении, индекс-1 при повышении.
- Установка данных вновь созданного элемента таблицы с данными, сохраненными до
- Создание нового редактора для создания новой кнопки для этого элемента таблицы
После создания элемента таблицы вновый индекс, элемент таблицы, существовавший ранее в новом индексе, кажется, автоматически перемещается туда, где ранее был выбран элемент таблицы, как если бы он знал, что нужно поменяться местами, и все работает как положено.Моя проблема в том, что после того, как элемент таблицы, существовавший в новом индексе до того, как он автоматически перемещается, редактор, похоже, не обновляет / не обновляет кнопку, пока я не нажму где-нибудь в таблице.Например, если моя таблица состояла из двух строк, и я перемещал строку 1 вниз:
Строка 1: Джон (Кнопка)
Строка 2: Джек (Кнопка)
Это будет выглядеть так:
Строка 1: Джек
Строка 2: Джон (Баттон)
Пока я не нажму на стол и не появится кнопка для Джека.
Я знаю, что это не самый эффективный способ реализовать это, но мне было интересно, можно ли было обновить Редактор кнопок Джека, чтобы он отображал кнопку без необходимости нажимать на стол или вызывать щелчок мышьюстол.После нескольких часов исследований я не могу найти способ получить доступ к редактору Джека.Кроме того, если кто-то может объяснить поведение таблиц SWT и как оно автоматически перемещает элементы таблицы, это было бы здорово.Я знаю, что это было очень долго, но если кто-то может помочь, я был бы очень признателен.Спасибо !!