1 下拉框
1.1 属性设置
Combo Box:
TyprList:DropList(下拉列表)
可以通过Data的数据栏手动添加数据
代码中添加数据:
添加变量
初始化中添加数据
m_cbx.AddString(TEXT("库里"));
m_cbx.AddString(TEXT("库兹马"));
m_cbx.AddString(TEXT("詹姆斯"));
m_cbx.AddString(TEXT("杜兰特"));
1.2 设置默认选项
//设置默认选项
m_cbx.SetCurSel(0); //int选项,数组的索引都是从0开始的
1.3 插入数据
m_cbx.InsertString(4,TEXT("欧文"));
1.4 删除数据
m_cbx.DeleteString(3);
1.5 获取索引并弹出
void CMy04comboBoxCtrlDlg::OnCbnSelchangeCombo1()
{
// TODO: 在此添加控件通知处理程序代码
//拿到索引的位置
int index=m_cbx.GetCurSel();
CString str;
m_cbx.GetLBText(index, str);
MessageBox(str);
}
2 列表框
2.1 属性设置
view ->report形式
2.2 添加表头
2.3 设置正文
其中表头不是正文的内容,索引从0开始
2.4 插入姓名、性别和年龄
2.3 整行选中、网格
//列表控件的使用
CString str[] = { TEXT("naem"),TEXT("sex") ,TEXT("age") };
for (int i=0;i<3;i++)
{
//设置表头 参数(索引,内容,对齐方式,列的宽度)
m_list.InsertColumn(i, str[i], LVCFMT_LEFT, 100);
}
//设置正文
//表头不是正文内容,索引从0开始
//m_list.InsertItem(0, TEXT("库里"));
//给这个Item插入其他的数据
//m_list.SetItemText(0,1,TEXT("男")); //第一行,第二列
//插入姓名
int j;
for (int i=0;i<10;i++)
{
j = 0;
CString name;
name.Format(TEXT("库里_%d"), i);
m_list.InsertItem(i, name);
//插入性别和年龄
m_list.SetItemText(i, ++j, TEXT("男"));
m_list.SetItemText(i, ++j, TEXT("22"));
//设置属性,整行选中,显示网格
m_list.SetExtendedStyle(m_list.GetExtendedStyle() | LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
}
3 树控件
3.1 设置属性
Has Lines
Has Buttons
Lines At Root
都设置为TRUE
3.2 准备icon图标
导入资源文件的Icon中,每个图标都有对应的ID
3.3 创建图标的集合
3.4 设置结点
3.5 设置默认选项
//准备ICON图标
HICON icons[4];
icons[0] = AfxGetApp()->LoadIconW(IDI_ICON5);
icons[1] = AfxGetApp()->LoadIconW(IDI_ICON6);
icons[2] = AfxGetApp()->LoadIconW(IDI_ICON7);
icons[3] = AfxGetApp()->LoadIconW(IDI_ICON8);
//CImageList list;//必须保存这个图片,写到.h当中作为成员属性
//创建图片的集合 参数(cx图像的尺寸,cy图形的尺寸,nFlags使用 32 位 DIB 部分,
list.Create(30, 30, ILC_COLOR32,4,4);
//添加具体的图片
for (int i=0;i<4;i++)
{
list.Add(icons[i]);
}
m_tree.SetImageList(&list, TVSIL_NORMAL);
//设置结点
HTREEITEM root=m_tree.InsertItem(TEXT("根节点"), 0,0,NULL);
HTREEITEM parent=m_tree.InsertItem(TEXT("父结点"), 1, 1, root);
HTREEITEM sub1 = m_tree.InsertItem(TEXT("子节点1"), 2, 2, parent);
HTREEITEM sub2 = m_tree.InsertItem(TEXT("子节点2"), 3, 3, parent);
m_tree.SelectItem(root);
3.6 结点的切换
触发OnTvnSelchangedTree1事件
void CMy06CTreeCtrlDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialogEx::OnSysCommand(nID, lParam);
}
}