Может ли плагин Qt изменить интерфейс, созданный основным приложением? - PullRequest
0 голосов
/ 29 апреля 2020

Я создаю основное приложение Qt для загрузки файлов моделей (какие-то файлы 3d-моделей, такие как STL). А затем я использую виджет дерева, чтобы показать информацию о загруженном файле. Затем я создаю плагин Qt для изменения загруженных файлов.

Могу ли я обновить sh древовидный пользовательский интерфейс, созданный в основном приложении после завершения редактирования файла в плагине? или как плагин может взаимодействовать с основным приложением (например, сообщить основному приложению, что его данные были изменены, и он должен обновить sh его пользовательский интерфейс)?

1 Ответ

0 голосов
/ 02 мая 2020

Я наконец использую сигнал / слот, чтобы решить проблему. Сначала я создаю общую библиотеку, известную как основному приложению, так и плагину. Затем я определяю сигнал (который будет излучаться при изменении пользовательского интерфейса) в общей библиотеке и соединяю его со слотом, определенным в основном приложении. После этого, когда я изменю данные с помощью плагинов, я позволю общей библиотеке отправлять сигнал, и основной интерфейс может быть изменен.
Почему бы не отправлять сигнал в плагинах? Потому что я не могу найти способ соединять сигналы в плагинах со слотом в основных приложениях напрямую. Я надеюсь, что я объяснил это хорошо и есть другие возможные решения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...