类型定义结构体_HISTOGRAMDLGPARAMS
{
L_UINTuStructSize;
pBITMAPHANDLEpBitmap;
L_UINT64* puMasterHistogram;
L_UINTuMasterHistogramLen;
L_UINT64* puRedHistogram;
L_UINTuRedHistogramLen;
L_UINT64* puGreenHistogram;
L_UINTuGreenHistogramLen;
L_UINT64* puBlueHistogram;
L_UINTuBlueHistogramLen;
也就是说crMasterPen;
也就是说crRedChannelPen;
也就是说crGreenChannelPen;
也就是说crBlueChannelPen;
L_UINTuHistogramFlags;
L_UINT32uDlgFlags;
LTCOMMDLGHELPCBpfnHelpCallback;
L_VOID* pHelpCallBackUserData;
} histogramdlgparams,* lphistogramdlgparams;
的HISTOGRAMDLGPARAMS属性创建的对话框的初始化信息L_DlgHistogram函数。
此结构的大小,以字节为单位。使用sizeof操作符计算该值。
指向位图句柄的指针,该句柄引用要从中确定直方图的位图。如果该成员为NULL,则puMasterHistogram、puRedHistogram、puGreenHistogram和publehistogram成员必须有效。同样,如果puMasterHistogram、puRedHistogram、puGreenHistogram和publehistogram成员为NULL,则pBitmap必须包含一个指向位图句柄的有效指针。如果这个成员有效,它将被视为直方图表的来源。
一个无符号整数数组,表示每个强度级别在图像中出现的次数。设置此成员以初始化主直方图。如果该成员为NULL,则pBitmap成员必须有效,反之亦然。puMasterHistogram, puRedHistogram, puGreenHistogram和publehistogram成员必须都是有效的,才能被视为直方图表的源。
puMasterHistogram数组的长度,以字节为单位。
一个无符号整数数组,表示每个强度级别在图像中出现的次数。设置此成员初始化红色直方图。如果该成员为NULL,则pBitmap成员必须有效,反之亦然。puMasterHistogram, puRedHistogram, puGreenHistogram和publehistogram成员必须都是有效的,才能被视为直方图表的源。
puRedHistogram数组的长度,以字节为单位。
一个无符号整数数组,表示每个强度级别在图像中出现的次数。设置此成员以初始化绿色直方图。如果该成员为NULL,则pBitmap成员必须有效,反之亦然。puMasterHistogram, puRedHistogram, puGreenHistogram和publehistogram成员必须都是有效的,才能被视为直方图表的源。
puGreenHistogram数组的长度,以字节为单位。
一个无符号整数数组,表示每个强度级别在图像中出现的次数。设置此成员以初始化蓝色直方图。如果该成员为NULL,则pBitmap成员必须有效,反之亦然。puMasterHistogram, puRedHistogram, puGreenHistogram和publehistogram成员必须都是有效的,才能被视为直方图表的源。
publehistogram数组的长度,以字节为单位。
指定主通道直方图的绘制颜色的COLORREF值。要使用这个成员,必须在uDlgFlags中设置DLG_HISTOGRAM_USERPENCOLORS标志。您可以指定一个COLORREF值,例如Windows RGB宏的返回值,或者您可以使用PALETTEINDEX宏来指定调色板颜色。
COLORREF值,用于指定红色通道直方图的绘图颜色。要使用这个成员,必须在uDlgFlags中设置DLG_HISTOGRAM_USERPENCOLORS标志。您可以指定一个COLORREF值,例如Windows RGB宏的返回值,或者您可以使用PALETTEINDEX宏来指定调色板颜色。
COLORREF值,用于指定绿色通道直方图的绘制颜色。要使用这个成员,必须在uDlgFlags中设置DLG_HISTOGRAM_USERPENCOLORS标志。您可以指定一个COLORREF值,例如Windows RGB宏的返回值,或者您可以使用PALETTEINDEX宏来指定调色板颜色。
COLORREF值,用于指定蓝色通道直方图的绘制颜色。要使用这个成员,必须在uDlgFlags中设置DLG_HISTOGRAM_USERPENCOLORS标志。您可以指定一个COLORREF值,例如Windows RGB宏的返回值,或者您可以使用PALETTEINDEX宏来指定调色板颜色。
直方图标志,用于确定在计算直方图时使用哪些位。该值仅在位图为12位或16位灰度时使用。可能取值为:
价值 | 意义 |
---|---|
HIST_LOWHIGH_BITS | [0x0000]只使用位图句柄中存储的LowBit和HighBit值之间的位 |
HIST_ALL_BITS | [0x0010]使用所有的位来计算直方图(位图句柄中的LowBit和HighBit值被忽略) |
此对话框的用户界面标志,它们决定对话框的布局和操作。可能取值为:
价值 | 意义 |
---|---|
DLG_HISTOGRAM_SHOW_CONTEXTHELP | [0x00000001]对话框应该包含一个上下文敏感的帮助图标。 |
DLG_HISTOGRAM_SHOW_VIEWSTYLE | [0x00000002]对话框应该包含视图样式选项。 |
DLG_HISTOGRAM_USERPENCOLORS | [0x00000004]标志,表示crMaster、crRedChannel、crGreenChannel和crBlueChannel成员有效 |
指向可选帮助回调函数的指针。如果您不希望为该对话框提供帮助,请使用NULL作为该参数的值。要为这个对话框提供帮助,请使用函数指针作为该参数的值。回调函数必须遵循中描述的原型LTCOMMDLGHELPCB.
可用于传递回调函数所需的一个或多个附加参数的空指针。要使用此特性,请为变量赋值或创建包含所需字段的结构。然后,在这个参数中,传递变量或结构的地址,将其强制转换为L_VOID*.回调函数在其自己的pHelpCallBackUserData参数中接收地址,可以将其转换为适当数据类型的指针以访问变量或结构。如果不需要附加参数,则可以在此参数中传递NULL。