星期六, 九月 02, 2006

002 - WINX概览:窗口类(WindowClass)

*) 窗口类(WindowClass)的注册
• MFC、WTL弱化了窗口类的注册,与此相反,WINX强调窗口类概念,并要求用户主动注册窗口类。
 –表面上看,WINX的用法比MFC、WTL繁琐了(多了主动RegisterClass过程),但是深究下去,你将发现这恰恰是WINX推崇可视化界面开发的关键点。
• 窗口类注册相关
 –WINX_CLASS
 –WindowClass::RegisterClass
• 只有普通窗口、窗口超类(Superclass)需要注册。子类化窗口、普通对话框不需要注册。
 –RegisterClass 相关的例子:
  • 普通窗口
  • 超类(Superclass )
  • 对话框超类

*) 控件列表
• Static/Button/Edit/ComboBox
• ScrollBar/FlatScrollBar
• ListBox/DragListBox
• ListCtrl/HeaderCtrl/TreeCtrl
• ToolBarCtrl/ReBarCtrl
• SliderCtrl(即:TrackBarCtrl)
• SpinButtonCtrl(即:UpDownCtrl)
• TabCtrl/ToolTipCtrl/StatusBarCtrl/ProgressCtrl
• HotKeyCtrl/AnimateCtrl/IPAddressCtrl
• DateTimeCtrl/MonthCalCtrl
• ComboBoxEx/RichEdit
• LinkCtrl

*) 使用高版本特有控件
• SafeCtrl
 –这是一个特殊的窗口类。在以下用况使用:
  • 高版本Windows提供了一个控件(例如LinkCtrl)。我们希望在该版本的Windows版本使用它,而在低版本的Windows下,我们提供一个替换控件(AltCtrl)。
  • 我们使用了一个第三方控件。我们希望在用户安装了该控件时使用它,否则使用替换控件(AltCtrl)。
• 概念
 –OrgCtrl/OrgClassName
  • 高版本Windows提供(或第三方提供)的控件
 –AltCtrl/AltClassName
  • 替换控件。你需要实现的。
 –SafeCtrl/SafeClassName
  • 安全控件。WINX提供的。例如SafeLinkCtrl。

没有评论: