<分享>如何编写自己想要的控件(start from CWnd)
一直看到有人问,这种漂亮的控件是怎么做的?
到底要基于什么控件类做比较好?
我觉得,基于CWnd做最好,虽然工作量大,但是可以完全控制,
最重要的是,可以学到非常多的知识
(比如我以前从没用过的SetCapture,RedrawWindow,WS-EX-LAYERED,UpdateLayeredWindow,SetDIBits,TRACKMOUSEEVENT,PostMessage和SendMessage区别,观察者模式,Create和CreateEx区别,自己写消息循环,自己写ToolTip,自己写透明CListCtrl,自己写滚动条,and so on)
下面这个链接就是一个最简单的基于CWnd类的窗口
http://blog.csdn.net/zhoujielunzhimi/article/details/8480959
正如blog里面所说,这个QCtrl完全可以成为一个UI库基类的雏形。
我现在用WTL后发现,WTL有个最大的优点:消息嵌入。就是只要把基类嵌入到子类消息映射中,那么子类就无需在消息映射再对这些消息做映射。
回去后把我写的XTable截图发上来,让大家看看效果。希望大家能从QCtrl中有所收获!
MFC
WTL
UI
------解决方案--------------------
SF,支持
------解决方案--------------------支持,一下,加油。