Qt插件会改变主应用程序创建的UI吗



我构建了一个主要的Qt应用程序来加载模型文件(一些3d模型文件,如STL(。然后我利用一个树小部件来显示加载的文件的信息。然后我构建了一个Qt插件来修改加载的文件。

当我在插件中完成文件编辑后,我可以刷新在主应用程序中创建的树UI吗?或者,插件如何与主应用程序通信(例如,告诉主应用程序其数据已被修改,应该刷新其UI(?

我终于用signal/slot解决了这个问题。首先,我构建了一个主应用程序和插件都知道的公共库。然后,我在公共库中定义了一个信号(当UI应该更改时会发出(,并将其与主应用程序中定义的插槽连接。之后,当我通过插件更改数据时,我会让公共库发送信号,并且可以更改主UI
为什么不在插件中发送信号?因为我找不到将插件中的信号与主应用程序中的插槽直接连接的方法。我希望我已经很好地解释了这一点,还有其他可能的解决方案。

最新更新