
VC++/MFC/.Net
文章平均质量分 57
bitsjx
喜欢接触新事物!
喜欢较新朋友!
展开
-
写注册表的简单实现
首先添加需要使用的头文件,即#include 然后本文我们需要使用CRegKey这个类来实现写注册的操作。下面的代码是一段实现向注册表的"HKEY_LOCAL_MACHINE//Software"下面写入自己的应用程序的信息。CRegKey key; HKEY hRoot=HKEY_LOCAL_MACHINE; char szSubKey[MAX_PATH]="Software//CheckUpdate"; //查询注册表,如果不存在,那么创建 LONG Ret=key.Open(hRo原创 2010-06-08 14:54:00 · 847 阅读 · 0 评论 -
CListCtl控件实现左键双击事件响应
<br />这段代码实现的是当双击某一行时,获取当前这行的网址,然后调用浏览器实现打开网页。<br />void CSecurityDlg::OnNMDblclkList1(NMHDR *pNMHDR, LRESULT *pResult){ //LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<NMITEMACTIVATE>(pNMHDR); // TODO: 在此添加控件通知处理程序代码 NM_LISTVIEW *pNMListView原创 2010-06-11 20:05:00 · 1627 阅读 · 0 评论 -
MFC下载网页简单实现
<br />首先包含头文件声明变量<br />#include <afxinet.h>public: //目标网址 CString url; //定义网络连接Session CInternetSession localSession; //定义一个文件对象指针 CInternetFile* webFile; //网页源代码 CString sourceCode;<br />然后实现代码<br />void CDownLoadFile::StartDownLoad(){原创 2010-06-11 19:58:00 · 2687 阅读 · 0 评论 -
窗口抖动和类消息提示窗口的实现
这两个函数都用到了Sleep函数,不过在Windows里面Sleep函数是以毫秒为单位的,而在Linux系统里Sleep是以秒为单位的,小弟在嵌入式试验中有过教训啊!下面我们看一段实现窗口抖动和消息提示窗口的代码void Cqqdemo100514Dlg::OnBnClickedShake(){ // TODO: 在此添加控件通知处理程序代码 int ty=5; CRect m_rect; GetWindowRect(&m_rect); int recordy=原创 2010-06-11 19:44:00 · 2034 阅读 · 0 评论 -
MFC 定时器的使用
有时在MFC中定时器还是很有用途的,但是而且实现起来也很容易下面的代码是实现到一定的时间响应某个事件的定时器代码首先设定定时器SetTimer(1,m_updateTime*60*1000,NULL); 然后响应定时器代码void CCheckUpdatealpha1Dlg::OnTimer(UINT_PTR nIDEvent){ // TODO: 在此添加消息处理程序代码和/或调用默认值 //手动更新 FileProcess* fileProcess=new FileProcess();原创 2010-06-11 19:35:00 · 2281 阅读 · 1 评论 -
OnCommand函数
<br />OnCommand是响应WM_COMMAND消息的,一般是响应控件和菜单的命令消息时使用。<br />函数形式<br />LRESULT CALLBACK WndProc(HWND hWnd,UINT nMsg, WPARAM wParam, LPARAM lParam) 。<br />函数有2个参数WParam和LParam,这2个参数可以给我们消息处理所需要的重要信息。wParam的低字是控件ID,lParam是发送这个WM_COMMAND消息的控件的句柄。<br />我们可以在这个函数里面原创 2010-06-11 19:31:00 · 21920 阅读 · 4 评论 -
重写WindowProc函数
<br />首先介绍一下WindowProc函数。<br />函数功能:该函数是一个应用程序定义的函数。它处理发送给窗口的消息。WNDPROC类型定义了一个指向该回调函数的指针。WindowProc是用于应用程序定义函数的占位符。<br />函数原型:<br />LRESULT CALLBACK WindowProc (HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM IParam);<br />参数:<br />hwnd:指向窗口的句柄。<br />uMsg:指定消息类型。原创 2010-06-11 19:21:00 · 9466 阅读 · 0 评论 -
UTF-8与ANSI 编码转换
平时Coding的时候,经常会遇到一些编码转换的问题,尤其是UTF-8与ANSI 编码转换的问题。遇到好多回了,所以不得不拿出来单独看一下。其实这个问题如果知道怎么做的话也不是问题,但是第一次接触到的时候我却是费了好大的功夫才搞出来!看一下下面的代码//utf编码转换为ansi编码 string CDownLoadFile::Utf82Ansi(const char* srcCode){ int srcCodeLen=0; srcCodeLen=MultiByteToWideChar(CP原创 2010-06-11 18:41:00 · 11203 阅读 · 1 评论 -
MFC修改资源
<br />在*.rc文件右键选中查看代码,得到部分片段<br />// Icon with lowest ID value placed first to ensure application icon// remains consistent on all systems.IDR_MAINFRAME ICON "res//CheckUpdate.ico"IDI_ICON_ADD ICON原创 2010-06-11 19:15:00 · 2243 阅读 · 1 评论 -
CString 与string 以及char之间的转换
还是用代码说话吧。看看下面这这段代码,里面涉及到了CString 与string 以及char之间的转换。void CManageDlg::ReadFromRecord(){ ifstream in; in.open("./url//record.txt",ios::in); string tempbuf=""; int nIndex=0; char buf[256]; while(in.getline(buf,256)) { tempbuf=(string)buf原创 2010-06-11 13:47:00 · 1106 阅读 · 0 评论 -
MFC中使用C++ 读写文件
首先添加C++头文件#include 至于C++读写文件的类大家百度一下,基本上就可以弄得差不多了。然后自己写的一段代码//void CManageDlg::WriteToRecord(){ ofstream out; out.open("./url//record.txt",ios::out); CString temp=_T(""); int nSize=m_manageLst.GetItemCount(); int nIndex=0; string buf; f原创 2010-06-11 13:35:00 · 1949 阅读 · 1 评论 -
ShellExecute 调用浏览器
ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外不程序有一定的控制。在此例中,m_updateManageSite是要打开的网页地址,执行之后,程序会调用系统默认的浏览器打开网页。//调用默认的浏览器打开网页ShellExecute(NULL,NULL,m_updateManageSite,NULL,NULL,SW_SHOW);就介绍这些吧,可以写一个小程序测试一下,看看效果。我记得自己当时第一眼看效果的时候真的很兴奋!原创 2010-06-11 13:27:00 · 1297 阅读 · 0 评论 -
设置托盘图标代码
//设置托盘图标 m_tnid.cbSize=sizeof(NOTIFYICONDATA); m_tnid.hWnd=GetSafeHwnd(); m_tnid.uID=0; m_tnid.hIcon=m_hIcon; m_tnid.uFlags=NIF_ICON|NIF_TIP|NIF_MESSAGE; m_tnid.uCallbackMessage=WM_COMMAND; CString sTitle=_T(原创 2010-06-07 11:12:00 · 995 阅读 · 0 评论 -
一段删除CListCtl多行的代码
基本思路就是从最后一项开始查找,如果某一项被选中了,那么执行删除操作。for (int nIndex=m_updateManageLst.GetItemCount();nIndex>=0;nIndex--) { if (m_updateManageLst.GetItemState(nIndex,LVIS_SELECTED)==LVIS_SELECTED) { m_updateManageSite=m_updateManageLst.GetItemText(nIndex,1);原创 2010-06-07 11:06:00 · 1097 阅读 · 0 评论 -
写注册表设置开机启动的代码
void CSetDlg::OnBnClickedSetSet(){ // TODO: 在此添加控件通知处理程序代码 int RunOnStartFlag=0; RunOnStartFlag=m_RunOnStart.GetCheck(); if (BST_CHECKED==RunOnStartFlag) { //设置开机启动 //根键、子键名称、子键句柄 HKEY hRoot=HKEY_LOCAL_MACHINE; char szSubKey[MAX_P原创 2010-06-07 10:17:00 · 2812 阅读 · 0 评论 -
对话框程序中使用工具栏
前些日子一直在写一个小的软件,东西确实比较小,所以不想使用单文档的程序,其实也是因为对于单文档的程序感觉无从下手,还是对话框简单一些。但是日子过了一段时间,当规划者怎样使用工具栏的时候,还是费了一番力气才搞定的。小弟在图书馆借的一本书上给出了一种实现方案,感觉还不错,贴出来与大家分享一下!首先声明图像列表对象和工具栏对象,即//图像列表控件CImageList m_ImageList;//工具条CToolBar m_ToolBar; 然后下面的代码会实现在对话框程序里创建一个工具栏的效果,即m_原创 2010-06-08 15:18:00 · 1308 阅读 · 0 评论 -
VC程序使用CImageList类
首先在*.h头文件里面加入CImageList类的定义:CImageList m_ImgList;然后在类的实现里面试用下面的代码创建CImageList链表:m_ImgList.Create(16,16,ILC_COLOR24,11,0);m_ImgList.SetBkColor(RGB(255,255,255));UINT nIconID[]={IDI_ICON1,IDI_ICON2,IDI_ICON3,IDI_ICON4,IDI_ICON5,IDI_ICON6,IDI_ICON7,IDI_IC原创 2010-12-13 16:37:00 · 12761 阅读 · 1 评论