【问题标题】:Why we need add 1 to background brush color?为什么我们需要在背景画笔颜色上加 1?
【发布时间】:2019-06-23 11:58:44
【问题描述】:

WNDCLASS 结构的成员之一是类背景画笔的句柄。

来自描述:

该成员可以是用于绘制背景的物理画笔的句柄,也可以是颜色值。颜色值必须是以下标准系统颜色之一(必须将值 1 添加到所选颜色)。

问题:

为什么必须给这个值加 1?

【问题讨论】:

  • 因为某些历史原因索引是从一开始而不是从零开始的?
  • "为什么必须给这个值加 1?"因为文档告诉你这样做。
  • 区分NULLCOLOR_SCROLLBAR?
  • @Mathieu:请作为答案发布,我认为这是正确的。
  • @DavidHeffernan:很好的评论,必须为后代保留。

标签: c windows winapi graphics gdi


【解决方案1】:

可能是因为hbrBackground字段接受NULL值。

RegisterClass() 函数用于区分COLOR_SCROLLBAR(即0)和NULL(可接受值)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-11
    • 1970-01-01
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 2018-03-21
    • 1970-01-01
    相关资源
    最近更新 更多