想要写一个自己的Wnd类,但是不要从CWnd中继承,而是自己重新写一个,不知道怎么下手,请高手指点迷津。
不从CWnd中继承是因为我要写一个控件,该控件用于delphi下开发。
不从CWnd中继承是因为我要写一个控件,该控件用于delphi下开发。
解决方案 »
- 汉字的GB码值范围是多少?
- 这个引用为嘛出错? 谢谢(A reference that is not to 'const' cannot be bound to a non-lvalue)
- 请教:vc从尾部向上按字节读取文件,结果遇到中文就乱码,怎么解决?
- 如何用spi实现socks5代理
- 两个对话框的显示
- GlobalAlloc是不是已经替换了GlobalAllocPtr,在MSDN中没有找到GlobalAllocPtr函数啊
- 怎么让控件不消失
- 我ATL中定义建立一个CEDIT的控件,提示错误,是为什么
- Combo box的简单问题!
- 高手!在COM中怎样传入一个回调函数,在ATL中是怎样定义的。
- listcontrol控件的2个问题
- vc录音问题
或许你如果对API熟悉的话,这些都不是问题。
设计模式里面有个桥接模式,你可以学习学习。
应该可以解决现有使用接口与目标使用接口不一致的问题。
而且可维护性很强。
UML图可以简单表示为.
CWnd是已经具有的实现(是一个基类)。
CDelphiWnd有待实现的抽象类(接口类)
CDelphiWndImp是从这两个派生出来的具体实现。属于一个桥接模式,把这两个衔接起来了。CWnd<-------\
\
CDelphiWndImp
/
CDelphiWnd<-/CDelphiWnd如何与Delphi通信也存在一定问题的。
可以使用操作系统消息通信。这样只与操作系统相关,而独立于开发语言。最经典的scintilla就是采用这个设计。也可以采用微软的COM机制,就是楼上DentistryDoctor说的啦。