MFC学习之路
QSCJOB
这个作者很懒,什么都没留下…
展开
-
宏CONTAINING_RECORD的计算解析
// 宏CONTAINING_RECORD的计算解析// 宏CONTAINING_RECORD的作用是根据结构体中的某成员的指针来推算出该结构体的指针!#include "stdafx.h"#include #include using namespace std;#define CONTAINING_RECORD(address, type, field) ((t原创 2013-05-23 11:45:04 · 3024 阅读 · 0 评论 -
UINCODE环境下编写剪贴板程序代码
void CClipboardDlg::OnBnClickedBtnSend(){ // TODO: 在此添加控件通知处理程序代码 CString strSource; if(OpenClipboard()) //打开剪贴板 { HGLOBAL hGlobal; LPTSTR pBuffer; EmptyClipboard();原创 2012-10-12 17:56:10 · 1137 阅读 · 0 评论 -
解决WIN7编译出的程序无法连接其他数据库的问题。
情况:五台电脑。四台WIN7,一台XP。其中两台WIN7安装SQL SERVER2008刚开始编辑程序的时候是在装有两台SQL SERVER2008的机器里测试,没有问题,在那台没有装SQL SERVER 2008的机器里无法连接数据库,在连接字符串里加入Persist Security Info=False;解决。但是,在剩下的最后一台WIN7电脑和XP电脑上怎么也连接不上数据库。后原创 2012-08-09 20:54:00 · 2614 阅读 · 0 评论 -
MFC学习之路(八) 关于多态
#include using namespace std;class Parent{public: Parent() { } ~Parent() { } void fun() { print(); } virtual void print() { cout << "parent" << endl; }};class Sun : public Pare原创 2012-05-14 11:20:59 · 1275 阅读 · 0 评论 -
MFC学习之路(七)实现多文档的单文档多视图
新建一个多文档应用程序假设名字为123新建一个MFC类,派生于CView,命名为CViewTest然后重载一个虚拟函数void CViewTest::OnInitialUpdate(){CView::OnInitialUpdate();// TODO: 在此添加专用代码和/或调用基类GetParent()->SetWindowText(_T("测试视原创 2012-05-11 09:50:33 · 4609 阅读 · 0 评论 -
MFC学习之路(六)在DoModal()之前态设置对话框窗口标题
在DoModal()之前态设置对话框窗口标题 有一个对话框变量CDlgTest dlg; 我们要根据运行时的内容动态设置窗口标题。 那么,像下面这样做,可以吗? dlg.SetWindowText(_T("你想设置的标题")); dlg.DoModal(); 显然不行,因为SetWindowText的时候对话框没有建立,对话框句柄不存在。原创 2012-05-05 19:39:42 · 9832 阅读 · 2 评论 -
MFC学习之路(五)让人菊花一紧的错误
没去加班,从头翻看C++ primer,想把内容看一遍,练习题做一遍。怕有遗漏,哪怕是再简单的联系题也要做一遍。其中一个题目,分别用for循环和while循环打印出10 到 0之间的所有的自然数。(别说我蛋疼............)#include int main(int argc, char *argv[]){int i = 10;while(i >=原创 2012-04-19 21:52:51 · 1459 阅读 · 0 评论 -
MFC学习之路(三)CPropertyPage调用UpdateData()的时候崩溃
在CPropertySheet的派生类里面有两个CPropertyPage变量分别为prop1和prop2。class CPropD::CPropertySheet{ CPropertyPage prop1; CPropertyPage prop2;}我想使用prop1和prop2里面的值控件值变量,当然,要先更新prop1.UpdateData;prop2原创 2012-04-12 08:55:46 · 2324 阅读 · 0 评论 -
MFC学习之路(四)不够细心,一个小问题蛋疼了一天
出问题的代码在这一段int pinCount = pATempl->m_PinCount; int* arrIndexCount =new int[pinCount]; ZeroMemory(arrIndexCount, pinCount); 测了很久才知道问题出在这里。一开始测试打印arrIndexCount里面的数值,发现都是些未定义的值。想不明白啊,网上说ZeroMe原创 2012-04-16 21:28:29 · 1180 阅读 · 0 评论 -
MFC学习之路(二)CListBox派生类的WM_NOTIFY消息
有一个CListBox派生类。CLBDrived然后在一个假设为CDlg的类里面定义了一个变量CLBDrived m_lbd,然后调用Create()函数,假设定义其ID为IDLBD,并且已添加LBS_NOTIFY风格。然后我们要获取m_lbd里面的双击消息。发现通过添加ON_LBN_DBLCLK(LDLBD, &CDlg::OnLbnDblclkLBDrived)宏,无法捕获双击消息原创 2012-04-11 21:37:27 · 1404 阅读 · 0 评论 -
MFC学习之路(一)CPropertySheet建立多属性页对话框的时候无法显示对话框
CPropertySheet简历多属性页对话框的时候无法显示对话框,发现调试输出窗口会打印:PropertySheet() failed: GetLastError returned 0网上查找不到相关资料。自己查看CPropertySheet的使用后发现原来是AddPage放错位置。AddPage函数不应该放在InitDialogBox里面,而应该放在构造函数里。而且要注意CProp原创 2012-04-10 20:17:15 · 1860 阅读 · 0 评论 -
InvokeHelper调用引发异常
代码原来的实现是try{InvokeHelper(...)}catch(...){GetLastError();}好吧,引发了异常,但是GetLastError()永远为零。状况了,网上又找不到相关资料。知道自己一步一步地从InvokeHelper跟踪进去。发现里面有这样的代码COleDispatchException* pExcepti原创 2013-06-08 11:36:40 · 6168 阅读 · 0 评论