我目前正在开发一个win32应用程序,我想我应该使用MVC模式。现在根据该模式,处理用户交互的代码应该在控制器中,以便我可以相应地更新模型和/或视图。 但是在Win32中,这是否意味着我的windowProc应该在控制器中?对我来说这似乎有些奇怪,我会创建一个窗口和所有UI的东西,然后在控制器中对wndProc进行子类化。另一方面,如果我不这样做,我最终会在视图中需要一个控制器实例,以便我可以处理该模型。我很确定这不是要走的路。Win32 MVC模式实现
如果任何人都可以指出我正确的方向,那会很棒!
谢谢。
msdn说:“控制器。控制器解释来自用户的鼠标和键盘输入,通知模型和/或视图根据需要进行更改。” 我所做的是,控制器响应windows消息,然后在UI上调用适当的方法来更新它,但我可能忽略了这一点。 至少我想我正在跟踪控制器是GUI和数据之间的链接。 – dotminic 2010-10-27 17:02:55
MVC模式并没有严格定义。我总是说 - 在设计模式之前使用你的大脑。用户界面对用户输入做出反应,并生成诸如“按下按钮”或“输入文本字段中的短语”之类的事件给控制器。 – 2010-10-27 17:19:28
我同意这一点!但那么我的问题是,如何通知控制器?由于我没有视图中的控制器实例,我是否应该实现类似Qt的信号?正如我在下面告诉dajames的时候,我想这样做是一种“艰难的方式”,所以我知道如果我为这种实现使用框架,底下会发生什么。 – dotminic 2010-10-27 18:11:08