![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MFC
wf6892
学生
展开
-
解决 Updatedata不能更新、报错问题。(主要是不同的类、线程中出现的)
目的:通过在A对话框(对应A类)中点击按钮控制B对话框(对应B类)的更新(利用Updatedata函数)。情况1:在A类中使用的Updatedata()只能更新此类(该类指的是此Updatedata()使用的类)的数据,不能更新B类中的数据;反之,在B类中使用Updatedata(),只能更新B类,不会更新A类中数据。情况2:在B类中定义函数UD(),其函数体包含Updatedata(),原创 2016-09-09 15:29:51 · 4776 阅读 · 0 评论 -
CIPAddressCtr控件中IP地址的转换问题
1、MFC中的IP控件,关联一个CIPAddressCtrl型的控制变量,为使其有一个初始化的值,可以调用SetAddress函数进行IP的设置。 2、SetAddress的用法:(1) m_IPAddress.SetAddress(127, 0, 0, 1);(2) char * strIP = "127.0.0.1";DWORD dwAddress = ntohl( in原创 2016-10-25 10:10:19 · 1033 阅读 · 0 评论 -
获取文件夹路径、在指定地点新建文件夹、在路径中加“\”函数。
1.获得动态设置的文件夹的路径。不包含文件名,代码如下:char szSelected[MAX_PATH] = {0}; char szSelected_m[MAX_PATH] = {0}; LPITEMIDLIST pidl; BROWSEINFO bi; bi.hwndOwner = this->m_hWnd; //窗口句柄 bi.pidlRoot = NULL;原创 2016-10-25 20:13:11 · 1693 阅读 · 0 评论 -
MFC在分屏后,分为左右两个对话框即两个view区相关参数的设置
1.建议将所有菜单栏按钮都定义在CMainFrame类中。则不会产生将菜单栏按钮定义在不同的view内,点击另一view界面产生的相应菜单项变虚现象。该现象主要由焦点不在菜单栏按钮的定义view内所产生的。2.updatedata()函数不能跨类调用。即在CMainFrame类中定义了左边view的对象,同时通过该对象调用左侧view的函数,若此时此函数的定义中包含updatedata(),则原创 2016-10-27 14:59:51 · 2293 阅读 · 0 评论 -
在MFC中使用cout
1.在MainFrame.h中添加头文件:#include #include 2.在MainFrame.h中声明函数:public: bool OpenConsole();3.在MainFrame.cpp中添加函数定义:bool CMainFrame::OpenConsole(){ // 保证函数只执行一次 static bool Runed = fals原创 2016-10-28 14:21:03 · 9304 阅读 · 1 评论 -
新建对话框(模态和非模态)
方法一:新建非模态对话框;方法二:新建模态对话框;原创 2016-10-20 21:50:59 · 513 阅读 · 0 评论 -
如何开新线程
1.声明线程内将运行的程序:static UINT jisuan(void *param);注意:1.必须为静态函数。 2.必须是UINT型。 3.参数必须为void *param或LPVOID lpParam。2.定义线程内将运行的程序。UINT CMainFrame::jisuan(void *param){ for原创 2016-10-27 13:05:48 · 685 阅读 · 0 评论 -
C++小问题解决
1.关于switch函数的一点注意。 如下代码: switch(nIDEvent) { case1: MoveForward(ReciveNum_U,0,0); Draw_TeeChart_U(ReciveNum_U,0);原创 2016-09-05 21:32:37 · 372 阅读 · 0 评论 -
设定系统时间
第一步:在要增加设定系统时间的功能处增加如下代码:SYSTEMTIME systemtime;systemtime.wYear = 2012;systemtime.wMonth = 12;systemtime.wDay = 12;systemtime.wHour = 12;systemtime.wMinute = 12;systemtime.wSecond = 12;system原创 2017-03-30 10:44:26 · 579 阅读 · 0 评论 -
MFC下小问题解决
1.分割屏焦点。2.关于Updatedata()的效用范围。3.关于GetDlgItem()参数的问题。4.MessageBox的巧用。5.关于单文档Ribbon类型中滑动条和编辑框的使用。6.关于初始化时窗口大小、位置的设置。原创 2016-09-09 15:38:18 · 568 阅读 · 0 评论 -
获取窗口、控件等指针。(未完待续)
1.获取某视图的指针:方法一(已测试):CMainFrame* pMainWnd = (CMainFrame*)AfxGetMainWnd();//获取主窗口指针 CView *pView = pMainWnd->GetActiveView();//获取主窗口中活动视图的指针方法二:COwnerApp *pApp = (COwnerApp *)AfxGetApp();//原创 2016-09-26 23:29:24 · 589 阅读 · 0 评论 -
MFC初始化窗口大小设定
1.一般MFC得到的窗口位置随机,窗口大小可以随意改变,固我们可以再增加语句进行设置,仍然在框架类中添加CMainFrame::OnGetMinMaxInfo(MINMAXINFO* lpMMI)函数,方法是点到类视图,在CMainFrame类上点击右键,选择属性,在属性页点击工具栏的“消息”图标,在列表中找出“VM_GETMINMAXINFO”项即可添加上述函数。2. CMainFrame:原创 2016-09-03 21:09:52 · 15381 阅读 · 0 评论 -
MFC下分割窗口
1. 在 MainFrm.h 文件中在CMainFrame 类内定义一个成员对象: CSplitterWnd m_wndSplitter;。2. 在 Class View 类视图中找到CMainFrame 类,右键点击,在右键菜单中选择属性,就会显示属性页,然后在属性页的工具栏上点击“重写”按钮,下面的列表中就列出了能够重载的函数,找到 OnCreateClient 函数后,点击生成重载函数。原创 2016-09-03 15:35:55 · 775 阅读 · 0 评论 -
MFC中利用picture control控件设置闪烁按钮。(控件以加载bitmap位图为例)
1. 从网上下载自己所需按钮图片,并转换为bmp格式(若选用图标,则转换为ico格式),将图片放在项目的res文件夹下。再将两个图标导入到资源视图中(资源视图下的Bitmap上点击(若bitmap,则在Icon上也可,最后会自动生成Bitmap)→添加资源→新弹出对话框中选择Bitmap,再单击导入→选择res文件夹中刚才存放的图片→则添加成功,在Bitmap下刚添加的位图的属性页更改好记的ID)原创 2016-09-04 17:58:51 · 2805 阅读 · 0 评论 -
待解决问题
1.数组的形参与实参传递2.在.h文件的类中声明了某个函数,并在.h文件中定义该函数,当在.cpp文件中使用该函数时就报错,重复定义;但当将函数定义移到.cpp文件中,则正常。原创 2016-09-04 21:57:30 · 271 阅读 · 0 评论 -
更改单文档下的对话框的显示范围
(1)在当文档下的对话框所对应的view类中,添加OnSize()函数。 注:在该VIEW类的属性对话框中,选择“消息”下的 VM_SIZE即可添加OnSize函数。(2)在OnSize函数中添加如下代码: this->MoveWindow(5,5,500,300);//设置在不移动滚动条的情况下,对话框能显示的大小。 SetScrollSizes(MM_T原创 2016-09-17 17:48:43 · 377 阅读 · 0 评论 -
一个TeeChart插件中添加多条曲线的方法
代码如下: //初始化数组 intdData[100]; intdData1[100]; for(int i=0;i { dData1[i]=50; } for(int i=0;i {原创 2016-09-05 17:13:24 · 6235 阅读 · 4 评论 -
在MFC中添加全局变量和全局函数的方法
用静态局部变量(Static)定义类中的函数、变量,则就相当于定义了全局函数、全局变量。说明:(1)静态局部变量、函数在即使在改类没有对象的情况下,也可以调用但是要加上类名。如:在应用时输入 类名::函数 即可调用。 (2)静态局部变量的值为最后一次使用它给其赋的值。具体步骤如下:1. 添加一个没有基类的新类,设类名起为CPublic,姑且称之为公用类。原创 2016-09-04 23:29:54 · 7490 阅读 · 0 评论 -
怎样在MFC的两个对话框中相互传递数据
前提:在一个基于单文档的应用程序中,新建了两个对话框A和B,并且用两个独立的类和他们关联。 A中有一个编辑框(关联变量为:m_strA),一个按钮a; B中有一个编辑框(关联变量为:m_strB),一个确定按钮(ID为:IDOK),一个取消按钮(ID:IDCANCEL);目的:点击对话框A的按钮a后弹出对话框B,在B的编辑框中输入数字,点击B中确定按钮后,B原创 2016-09-06 17:26:10 · 7017 阅读 · 1 评论 -
写文件dat文件函数+另存为对话框使用+时间设定函数分析
1. 关于写dat文件的两个方法。(1)用“ “//加入如下头文件#include #include using namespace std;//在相关函数中加入如下代码.下列函数是将字符a写入test.dat文件中。ofstream m_ocout_w;unsigned char m_char;m_ocout_w.open("test.da原创 2017-05-18 20:13:43 · 1250 阅读 · 0 评论