MFC 树形控件与列表控件
2015-10-07 21:44
375 查看
初始化区域代码:
// TODO: 在此添加额外的初始化代码 srand(time(NULL)); // 添加位图资源,必须要全局变量才行 m_treeImageListRoot.Create(IDB_BITMAP1, 24, 0, RGB(0, 255, 0)); m_treeImageListSon.Create(IDB_BITMAP2, 24, 1, RGB(0, 255, 0)); m_tree.SetImageList(&m_treeImageListSon, TVSIL_NORMAL); // 一级控件 CString strRoot[4] = { L"朋友", L"同事", L"同学", L"家人" }; for (int i = 0; i < 4; i++){ hRoot[i] = m_tree.InsertItem(strRoot[i], 0, 0); m_tree.SetItemData(hRoot[i], (DWORD)(i+100)); } static int first = 1; static int num = 0; // 二级控件 CString firstName[12] = { L"赵",L"褚", L"钱", L"孙", L"李", L"周" ,L"吴",L"卫",L"陈",L"冯",L"王",L"郑"}; CString secondName[14] = { L"同", L"蚁", L"戢", L"止", L"己", L"潜", L"肖", L"泣", L"涂", L"种", L"冼", L"睢", L"地", L"根" }; CString thridName[20] = { L"", L"", L"", L"", L"", L"", L"", L"蔡", L"余", L"杜", L"叶", L"程", L"苏", L"魏", L"吕", L"丁", L"任", L"沈" ,L""}; for (int i = 0; i < 4; i++){ for (int j = 0; j < 4; j++){ childTree = m_tree.InsertItem(firstName[rand() % 12]+secondName[rand()%14]+thridName[rand()%20], 0, 0, hRoot[i], TVI_LAST); m_tree.SetItemData(childTree, (DWORD)(num++)); if (first){ first = 0; activeTree = childTree; } } } // 设置选定项 m_tree.Select(activeTree, TVGN_CARET); // 列表控件 m_list.InsertColumn(0,L"类 别", LVCFMT_LEFT, 100); m_list.InsertColumn(1,L"描 述", LVCFMT_LEFT, 150); // 修改风格 m_list.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
双击树形控件:
void CContactProcDlg::OnTvnSelchangedTree1(NMHDR *pNMHDR, LRESULT *pResult) { LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR); // TODO: 在此添加控件通知处理程序代码 HTREEITEM SetItem; CString Name = L""; CString Num = L""; CString Age = L""; SetItem = m_tree.GetSelectedItem(); DWORD data = m_tree.GetItemData(SetItem); Name = m_tree.GetItemText(SetItem); // 获取名字 Num.Format(L"ECJTU2015211000%d%d", data%10,data/10); // 学号 Age.Format(L"%d", rand() % 20 + 20); // 年龄 m_list.DeleteAllItems(); m_list.InsertItem(0, L"姓名:"); m_list.SetItemText(0, 1, Name); m_list.InsertItem(1, L"学号:"); m_list.SetItemText(1, 1, Num); m_list.InsertItem(2, L"性别:"); m_list.SetItemText(2, 1, rand() % 2 ? L"男" : L"女"); m_list.InsertItem(3, L"年龄:"); m_list.SetItemText(3, 1, Age); *pResult = 0; }
此外添加了一个位图资源。
相关文章推荐
- EasyUI的中Tree
- HDU 1212 Big Number(大数取模)
- 数据库的建立
- 匿名函数
- HDU 3966 Aragorn's Story(树剖-点)
- Git 配置
- [经典进程同步问题]哲学家思考
- Java基础知识强化之网络编程笔记05:UDP之多线程实现聊天室案例
- 双目视觉学习总结(3)——立体匹配
- C#学习之多线程开发技术(十二)
- 13种排序算法详解(相当清楚,还附有flash动画)
- windows程序内部运行原理
- POJ 1200 字符串哈希
- 如何远程格式化迅雷宝硬盘
- 数据结构之自建算法库——广义表
- Linux驱动之虚拟网卡
- Android Menu
- 用CSS来画圆
- MySQL设计与开发规范
- 结对项目博客-四则运算题目生成程序的改进与分析