• 说明为什么Button控件不能使用CustomDraw技术


    MFC 4.7版本后实现了CustomDraw技术,使得对许多普通控件的自绘变得非常灵活和简单,我们通过修改传入的结构体成员来对控件做细微的定制,对于不关心的绘制阶段我们不做任何处理;CustomDraw自绘技术不同于OwnerDraw技术技术,OwnerDraw要求程序员员去绘制控件的整个阶段

    CustomDraw技术仅支持以下这些:

    Header controls
    List-view controls
    Rebar controls 
    Toolbar controls 
    ToolTip controls 
    Trackbar controls 
    Tree-view controls


    对应Button控件在特殊条件下也能使用,MSDN原文使用条件说明如下:

    Custom draw is also supported for button controls if you are running Windows XP and have an application manifest to ensure that Comctl32.dll version 6 is available.


    目前Windows XP系统微软已经不维护了,退出历史舞台了,我的电脑系统是Wind7的,因此使用CustomDraw技术完成Button控件的自绘是行不通的,只能使用Owner Draw自绘技术。为了兼容老代码,不可能取消Owner Draw,因此Custom Draw也没有必要支持Button, Static的简单控件。

    MFC Button控件自绘,参考MFC自绘Button按钮分析和实现.

  • 相关阅读:
    四套读取方案
    java的分层开发
    位移运算符
    反射
    多线程下的单例
    学生管理系统
    iOS-分段控制器-基本概念
    iOS-UITableView-处理cell上按钮事件(弹出警示框,页面跳转等)
    iOS-UIScrollView-图片缩放
    Xcode-Xcode 7.3 解决不能自动联想问题
  • 原文地址:https://www.cnblogs.com/jinxiang1224/p/8468347.html
Copyright © 2020-2023  润新知