从业务逻辑向 UI 发布消息

Posted

技术标签:

【中文标题】从业务逻辑向 UI 发布消息【英文标题】:Posting a message to UI from business logic 【发布时间】:2014-11-24 14:09:17 【问题描述】:

剧情:我的应用程序写成

UI 层。 业务逻辑层(静态库)。 服务层。

UI 和服务层之间的通信是通过套接字进行的。 主对话框的OnInitDialog(),我调用businessLogic.GetAllModuleInfo();,它将从服务获取数据,然后我调用UpdateData(FROM_MEMBERS_TO_CONTROLS);更新UI上的数据。

但数据并未反映在 UI 上。

我只是想知道一旦业务逻辑(实现为静态库)数据发生更改,哪种方式是更新 UI 的更好方法?

我需要向 UI 发布消息吗?如果是,我将不会在业务逻辑中使用 UI 句柄来向 UI 发布消息。下一步怎么走?

谢谢...

【问题讨论】:

您是说您从业务逻辑中获取数据但未显示? 是的...它没有得到更新。 发布更多代码,但不清楚。您使用的是基于对话框还是 SDI/MDI? 【参考方案1】:

UpdateData 仅适用于已在 DoDataExchange 中使用 DDX_Text 语句映射到成员变量的控件。 IDE 通过资源编辑器中的“添加变量”向导帮助添加这些内容。

【讨论】:

以上是关于从业务逻辑向 UI 发布消息的主要内容,如果未能解决你的问题,请参考以下文章

业务逻辑和 UI 逻辑有啥区别?

[网游客户端业务逻辑] unity下使用lua开发业务逻辑

WCF 作为业务逻辑

在 ui.qml 文件中的组件上添加业务逻辑

完全编码 UI 并且仅在构建业务逻辑 [Flutter] 之后是不是方便?

autojs实现ui和逻辑分离,简化业务逻辑