MFC中一些控件的使用和Opencv的一些变量转换
来源:互联网 发布:掰弯体验知乎 编辑:程序博客网 时间:2024/06/04 20:10
这几天需要做一个小的demo,用到了MFC,其实本来想用.net,听说更方便,但谁让我对mfc熟悉呢,懒也没办法。
下面是昨天遇到的一些问题:
Opencv中IplImage与Mat的转换
IplImage *image;Mat frame;frame = image;image = (IplImage)frame;CString与char的转换
CString strFile = dlg.GetPathName(); // 全路径DemoFile = strFile;tempfile = DemoFile.GetBuffer(DemoFile.GetLength());只有遇到一个问题
txt文件中存储了一连串的数字,用空格隔开,我需要一行一行的读取后,在一个一个的读取
最后采用c++文件读写的方式完成
char seps[]=" ";char *token;char bb[10000];datafile.getline(bb,1000);token = strtok(bb,seps);number=atoi(token);token = strtok(NULL,seps);while(token!=NULL){ number=atoi(token);token = strtok(NULL,seps);center.x = number;number=atoi(token);token = strtok(NULL,seps);center.y = number;number=atoi(token);token = strtok(NULL,seps);radius = number;circle( frame, center, radius, color, 3, 8, 0 );}还有一个是mfc中大家经常用到的OnTimer()函数
本来我也一直认为这是个多线程问题
但我发现其实OnTimer函数可以不用传递参数就可以使用主程序的变量
因此我认为其实这个函数并不是一个多线程
紧紧是过一段时间执行一次而已
但是如何停止OnTimer的运行呢?
网上说可以用
CDialog::OnTimer(NULL);我试过了,并不可行
最后我加了判断让OnTimer函数空运行解决了问题
还有一个,很多人可能不太喜欢编写mfc中打开文件对话框的程序
给大家一个模板
CString strAppName;//当前工作目录char *tempfile;::GetModuleFileName(NULL, strAppName.GetBuffer(_MAX_PATH), _MAX_PATH);strAppName.ReleaseBuffer();int nPos = strAppName.ReverseFind('//');strAppName = strAppName.Left(nPos + 1);LPCTSTR szFilter = "Chart Files (*.*)|*.*|Worksheet Files (*.*)|*.*|Data Files (*.*;*.*)|*.*; *.*|All Files (*.*)|*.*||";CFileDialog dlg(FALSE,NULL ,strAppName+"file",OFN_ENABLESIZING ,szFilter,NULL); // 打开用TRUE, 保存用 FALSEif(dlg.DoModal() == IDOK){ CString strFile = dlg.GetPathName(); // 全路径 DemoFile = strFile; tempfile = DemoFile.GetBuffer(DemoFile.GetLength());datafile.open(tempfile);}最后的tempfile就是所打开文件的路径名
datafile是一个ifstream变量
最后说一下CString转char*中可能大家会遇到一个W_char无法转换为char的问题
这个事编译器设置的问题
w_char和char的字节数不相同导致
修改编译器的属性,改为支持多字节就可以了(默认为union字符)
接这些吧,也给自己总结下。
- MFC中一些控件的使用和Opencv的一些变量转换
- MFC中一些变量类型的转换和检查
- mfc 控件使用的一些小问题
- MFC中数据类型转换的一些心得
- MFC中一些类型的转换
- MFC中关于控件变量的使用!
- MFC中一些使用的方法
- MFC中一些使用的方法
- MFC中一些使用的方法
- 关于MFC中CMemoryState的一些使用
- MFC中一些使用的方法
- MFC中一些使用的方法
- MFC在共享DLL中使用转换为静态库中使用的一些问题
- 控件的一些使用
- 一些控件的使用
- MFC 新控件CMFCTasksPane的一些使用感想
- vs2005中Calendar控件的一些使用
- vs2010中Calendar控件的一些使用
- GDB调试笔记
- DOM详解
- linux 命令集锦
- StackOverflowError
- 171. Fortune knocks at least once at every man's gate. 风水轮流转
- MFC中一些控件的使用和Opencv的一些变量转换
- 第六周C++实验报告
- Oracle10g数据库
- fwrite file
- Blackfin处理器在硬件设计上的注意事项小结
- 死亡之Ping(Ping of Death)攻击
- J2EE 时间格式化
- VB.NET中如何添加配置文件(初级篇)
- Linux基础知识