化肥三少:关于VC编程问题

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 09:00:09
BOOL CComboDlg::OnInitDialog()
{
CDialog::OnInitDialog();

CString str[6]={"水平线","竖直线","向下斜线","向上斜线","十字线","交叉线"};
int nIndex;
for (int i=0;i<6;i++)
{
nIndex=m_Pattern.AddString(str[i]);
m_Pattern.SetItemData(nIndex,i);
}
m_Pattern.SetCurSel(0);// TODO: Add extra initialization here
m_nDrawPattern=0;
return TRUE;
}

其中m_Pattern.SetItemData(nIndex,i);是将什么与对应的索引号相关联?是0 1 2 3 4 5这几个数值么?

后面有如下代码(部分):
m_nDrawPattern=m_Pattern.GetItemData(nIndex);
CBrush drawBrush
drawBrush.CreateHatchBrush(m_nDrawPattern,RGB(0,0,0));

他是怎么实现画出水平线,交叉线等等的?

实在没想通事怎么关联起来的

BOOL CreateHatchBrush(int nIndex,COLORREF crColor );中的nIndex参数不是只有HS_BDIAGONAL HS_CROSS HS_DIAGCROSS
HS_FDIAGONAL
HS_HORIZONTAL HS_VERTICAL 这几种选项么?跟0 1 2 3 4 5 这些数有什么关系么?

第二个问题描述不清楚