关于INDEXTOSTATEIMAGEMASK

来源:互联网 发布:加工中心打孔编程格式 编辑:程序博客网 时间:2024/05/16 08:19

INDEXTOSTATEIMAGEMASK(i)的返回值并非是1、2、3、4。

msdn仅说明,通过它可以返回state image图像的某一部分,但是怎么获得的没讲。

通过跟踪INDEXTOSTATEIMAGEMASK的返回值大致可以猜到。它是以这个数为基准,截取state image的一部分内容(因为图像在计算机中也是一些bit位)。

以m_imageState.Create(IDB_MUTITREE,13, 1, RGB(255,255,255))为例。

其中,nState: 0->无选择钮 1->没有选择 2->部分选择 3->全部选择

对于INDEXTOSTATEIMAGEMASK(2),返回值是8192,可以这样计算

8192 = (13 * 13) * 24 *2

其中24是每个像素的比特位数。

算得的是2,即第2块图像。

原创粉丝点击