MFC clist 学习设计
最近想设计一款WEBSHELL的综合破解工具。
然后设计到了日志输出那儿,因为MFC不熟悉,刚学。所以一直在想用edit控件好还是clist比较好。
今天设计了一下日志输出界面,然后记录一下学习笔记。
void CshellDlg::panted()
{
m_list.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT); //插入列表
m_list.InsertColumn(,L"Host",,);
m_list.InsertColumn(,L"Path",,);
m_list.InsertColumn(,L"Line",,);
m_list.InsertColumn(,L"Password",,);
m_list.InsertColumn(,L"Procotol",,);
} void CshellDlg::OnNMRClickList1(NMHDR *pNMHDR, LRESULT *pResult) //右键弹出菜单
{
LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
// TODO: Add your control notification handler code here
CMenu popup;
popup.LoadMenu(IDR_MENU1);
CMenu* pM = popup.GetSubMenu();
CPoint p;
GetCursorPos(&p);
int count = pM->GetMenuItemCount();
// if (m_list.GetSelectedCount() == 0) //如果没有选中
// {
for (int i = ; i < count; i++)
{
pM->EnableMenuItem(i, MF_DISABLED | MF_GRAYED); //菜单全部变灰
} // }
pM->TrackPopupMenu(TPM_LEFTALIGN, p.x, p.y, this); *pResult = ;
} void CshellDlg::OnInsertInsert()
{
// TODO: Add your command handler code here
HANDLE m_hTrd;
m_hTrd = CreateThread(NULL, , Thread1, this, , NULL);
if (m_hTrd == NULL)
{
AfxMessageBox(L"create thread error");
} } DWORD WINAPI CshellDlg::Thread1(LPVOID lpParam)
{
CshellDlg* shell = (CshellDlg*)lpParam;
TCHAR Filesize[];
for (int i =;i<;i++)
{
//循环插入数据
swprintf(Filesize,L"%d",i);
int idx = shell->m_list.InsertItem(shell->m_list.GetItemCount(),L"Hello word");
shell->m_list.SetItemText(idx,,L"192.168.1.1");
shell->m_list.SetItemText(idx,,L"/owa.aspx");
shell->m_list.SetItemText(idx,,Filesize);
shell->m_list.SetItemText(idx,,L"");
shell->m_list.SetItemText(idx,,L"http");
// Sleep(100);
}
return ;
} void CshellDlg::OnInsertCleart()
{
m_list.DeleteAllItems(); //删除所有条目
// TODO: Add your command handler code here
} void CshellDlg::OnInsertDeletethis()
{
//wchar_t buffer[MAX_PATH] = {0};
int iselect = m_list.GetSelectionMark(); //获取光标输在位置
// m_list.GetItemText(iselect,0,buffer,MAX_PATH); //获取条目信息
m_list.DeleteItem(iselect); //删除光标所在的行
}
public:
void panted();
CListCtrl m_list;
afx_msg void OnNMRClickList1(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnInsertInsert();
afx_msg void OnInsertCleart();
afx_msg void OnInsertDeletethis();



MFC clist 学习设计的更多相关文章
- MFC 中的设计模式分析
MFC 中的设计模式分析 最近在学习设计模式,突然想到MFC里面其实也包含有设计模式的原理,于是分析了一下,做一个笔记,网上也找了一些资料,在此一并感谢. 创建型模式 单例模式(Singleton P ...
- 【MFC】MFC技巧学习 当做字典来查
MFC技巧学习 摘自:http://www.cnblogs.com/leven20061001/archive/2012/10/17/2728023.html 1."属性页的添加:创建对话框 ...
- MFC的学习路线
首先,MFC是比较难的!比C#和VB要难得多.MFC是基于C++的.首先C++必须熟悉.MFC主要是学习里面的控件的使用. 建议学习路线: 1. 易语言中文编程从入门到精通: https://deta ...
- MFC 阶段学习总结
由于项目需求,需要用到C++开发软件,所以开始学习C++,重点是MFC,因为是窗体应用,感觉win32的比较麻烦,还是MFC方便点.至于为什么要用C++呢, 由于C++应用不需要客户额外安装环境和加密 ...
- Win32/MFC/COM学习推荐书籍
以前有不少朋友问关于学习各种技术的推荐书籍的问题,这里把我觉得比较好的一些书籍列一下,希望能起到抛砖引玉的作用就好了:) Win32开发 Programming Windows by Charles ...
- MFC Ribbon界面设计
Ribbon是类似于office2007样式的界面,它替代了传统的MFC程序里的菜单和工具栏 MFC默认生成的Ribbon功能少,需要我们自己添加一些控件和图片等元素使界面好看 看下面的一个界面,是V ...
- C++ 和 MFC的学习
1. 在Windows应用程序设计中,既可以使用个C的基本数据类型,也可以使用Windows自定义的数据类型.但要注意,凡是Windows自定义的关键字都要大写. 2. 什么是句柄? 在Windows ...
- 201621123037 《Java学习设计》 第五周学习总结
Week05-继承.多态.抽象类与接口 1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 关键词:接口."has-a".多态.comparable.Compa ...
- Java设计模式学习——设计原则
第一章 设计原则 1.开闭原则 一个软件实体,像类,模块,函数应该对扩展开放,对修改关闭 在设计的时候,要时刻考虑,让这个类尽量的好,写好了就不要去修改.如果有新的需求来,在增加一个类就完事了,原来的 ...
随机推荐
- zookeeper 事务日志与快照日志
zookeeper日志各类日志简介 zookeeper服务器会产生三类日志:事务日志.快照日志和log4j日志. 在zookeeper默认配置文件zoo.cfg(可以修改文件名)中有一个配置项data ...
- [LintCode] 通配符查询
动态规划: class Solution { public: /** * @param s: A string * @param p: A string includes "?" ...
- QQ能上,网页打不开
这是一个老问题了,在大学的时候就经常碰到有人问这样的问题,今天写出来祭奠一下,姑凉长点心吧~! 安阳地区DNS:网通202.102.224.68 如果你是电信:222.88.88.88或者直接弄成顶级 ...
- 命名空间 <iostream>和<iostream.h> 由程序设计者命名的内存区域
namespace_百度百科 https://baike.baidu.com/item/namespace/1700121?fromtitle=命名空间 namespace即“命名空间”,也称“名称空 ...
- js滚动显示: 滚动条置顶/底
<script> //当聊天室的内容超出页面范围时, 如何让页面刷新后 显示最下面的内容 document.getElementByIdx ( 'chatboard').scrollTop ...
- django之contenttype
平时开发过程中,我们会经常遇到这么一个类似的场景,比如 不同的课程,有不同的价格策略 不同的课程可使用不同的优惠券(满减券,通用券,专用券) 不同的评论区,支持的评论 就拿 不同的课程,有不同的价格 ...
- Linux(2)- linux目录结构、shell基本命令
一.Linux之文档与目录结构 1.Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.Linux没有“盘(如C盘.D盘.E盘)”的概念,而是建立一个根"/&q ...
- docker的安装以及jdk和tomcat的环境配置
准备工作:需要Linux kernel 3.8支持查看linux内核的版本:root@ubuntu-dev:~# cat /proc/version查看linux版本:root@ubuntu-dev: ...
- Mark一下 mysql 误删除root用户的解决方法
今天学习mysql用户管理,不小心将mysql.user表中的root用户给删掉了,然后就无法登录mysql了,网上找到了linux下的解决方法,我做了简单的修改,改成了我的windows版,恢复方法 ...
- php strtotime 函数UNIX时间戳
int strtotime ( string time [, int now]) 本函数预期接受一个包含英文日期格式的字符串并尝试将其解析为 UNIX 时间戳. 如果 time 的格式是绝对时间则 n ...