DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::
上一页 1 ··· 387 388 389 390 391 392 393 394 395 ··· 474 下一页

2013年11月22日

摘要: 前言 好长时间没写博文了,今天偷偷懒写篇关于opencv2中鼠标响应操作的文章。 鼠标操作属于用户接口设计,以前一直使用Qt来做,但是如果只需要简单的鼠标,键盘操作,直接调用opencv库的函数也未尝不可,鼠标操作之前已经接触很多了,在MFC,QT,OpenGL,等等中,理论主要就是两点,一是监控鼠标操作,鼠标点击,移动,松开,然后通过mouse_event识别判断出那一种鼠标的操作,根据不同的操作然后进行处理,二是在主函数中加入鼠标的回调函数,将鼠标操作与程序的窗口绑定。 第一节 函数介绍 暂时只接触了两个关于opencv2鼠标响应操作的... 阅读全文
posted @ 2013-11-22 15:02 DoubleLi 阅读(35348) 评论(6) 推荐(1)

2013年11月21日

摘要: 工作线程,在一些技术文章被称为辅助线程,是相对于主线程而言的。在工作线程中使用界面需要一些技巧。我就曾在工程线程中弹出对话框中遇到过莫名奇妙的错误。下面就我的经验谈谈如何从工作线程中弹出对话框(暂时只讲方法,原理还没彻底弄清楚)。实际上在工作线程中直接弹出模式对话框中在debug模式下有时出错(这里的有时的意思是必然会出错,但是不是每次都出错),弹出模式对话框的代码如下:DWORDWINAPIRecvThread(LPVOIDlpParam)//工作线程函数{CAIDlgProductNamedlg;if(dlg.DoModal()==IDOK){……}}错误截图:如果跟踪DoModal函数, 阅读全文
posted @ 2013-11-21 11:04 DoubleLi 阅读(1448) 评论(0) 推荐(0)

摘要: 信息来源:csdn C/C++ 编程语言的最强大功能之一便是其动态分配和释放内存,但是中国有句古话:“最大的长处也可能成为最大的弱点”,那么 C/C++ 应用程序正好印证了这句话。在 C/C++ 应用程序开发过程中,动态分配的内存处理不当是最常见的问题。其中,最难捉摸也最难检测的错误之一就是内存泄漏,即未能正确释放以前分配的内存的错误。偶尔发生的少量内存泄漏可能不会引起我们的注意,但泄漏大量内存的程序或泄漏日益增多的程序可能会表现出各种 各样的征兆:从性能不良(并且逐渐降低)到内存完全耗尽。更糟的是,泄漏的程序可能会用掉太多内存,导致另外一个程序垮掉,而使用户无从查找问题的真正根源。此外,即使 阅读全文
posted @ 2013-11-21 11:02 DoubleLi 阅读(498) 评论(0) 推荐(0)

摘要: 声明:本文章是我整合网上的资料而成的,其中的大部分文字不是我所为的,我所起的作用只是归纳整理并添加我的一些看法。非常感谢引用到的文字的作者的辛勤劳动,所参考的文献在文章最后我已一一列出。对关注性能的程序开发人员而言,一个好的计时部件既是益友,也是良师。计时器既可以作为程序组件帮助程序员精确的控制程序进程,又是一件有力的调试武器,在有经验的程序员手里可以尽快的确定程序的性能瓶颈,或者对不同的算法作出有说服力的性能比较。在Windows平台下,常用的计时器有两种,一种是timeGetTime多媒体计时器,它可以提供毫秒级的计时。但这个精度对很多应用场合而言还是太粗糙了。另一种是QueryPerf. 阅读全文
posted @ 2013-11-21 11:01 DoubleLi 阅读(1672) 评论(0) 推荐(0)

摘要: 晚上编一个小程序,涉及到如何设置对话框的背景颜色和静态文本颜色。这在VC6.0中本来是一句话就搞定的事。在应用程序类中的InitInstance()函数添加: //设置对话框背景和文本颜色SetDialogBkColor(RGB(160,180,220),RGB(0,0,0));谁知这在VS 2005上竟不起作用,到网上一查,原来SetDialogBkColor函数在VS 2003中就已经不支持了。只得另辟蹊径。另外的办法就是响应WM_CTLCOLOR消息,在消息映射函数中添加:[cpp]view plaincopy HBRUSHCFileSpltDlg::OnCtlColor(CDC*pDC 阅读全文
posted @ 2013-11-21 10:58 DoubleLi 阅读(3301) 评论(0) 推荐(1)

摘要: 在很多系统中出于美观的需要常常要设置背景图片。下面我介绍一种在客户区设置背景图片的简单方法。1.将背景bmp图片导入到工程,资源ID这里假设为IDB_BITMAP12.在视图类添加如下代码:[cpp]view plaincopy voidCSetBkMapView::OnDraw(CDC*pDC){CSetBkMapDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);if(!pDoc)return;//TODO:在此处为本机数据添加绘制代码//获取客户区大小CRectrcClient;GetClientRect(&rcClient);CBitmapbmp 阅读全文
posted @ 2013-11-21 10:56 DoubleLi 阅读(676) 评论(0) 推荐(0)

摘要: 开发时有一个工程的一个文件的断点无效,VS 2005提示说当前不会命中断点。源代码与原始版本不同,请在断点选项里设置允许源代码与原始版本不同。这个是针对单个断点进行设置。如果要对所有的断点进行设置,则要在“工具”——〉“选项”——〉“调试”——〉“要求源文件与原始版本完成匹配”去掉勾。 实际上有比这个办法更好的办法,就是将出问题的文件用notepad打开,然后另存为Unicode编码,覆盖原来的文件。 网上另外有一种办法是:通过重新格式化出问题的源文件亦可以解决,即在VS2005中选择 “编辑”——〉“高级”——〉“设置选定内容的格式”。 阅读全文
posted @ 2013-11-21 10:54 DoubleLi 阅读(936) 评论(0) 推荐(0)

摘要: 以前看《Window核心编程》,感觉多字节和宽字节之间还比较麻烦的,至少MultiByteToWideChar函数和WideCharToMultiByte函数有足够多的参数的意义让我们去理解。近日接触了ATL的一个很好的字符串的转换宏:A2W和W2A。用法很简单,A2W的用法:[cpp]view plaincopy #includeDoSomething(LPWSTRstr);//函数声明USES_CONVERSION;DoSomething(A2W("SomeString"));W2A的用法:[cpp]view plaincopy #includeDoSomething( 阅读全文
posted @ 2013-11-21 10:53 DoubleLi 阅读(996) 评论(0) 推荐(0)

摘要: 转载地址:http://www.cnblogs.com/chio/archive/2008/08/05/1261296.html目前以lib后缀的库有两种,一种为静态链接库(Static Libary,以下简称"静态库"),另一种为动态连接库(DLL,以下简称"动态库")的导入库(Import Libary,以下简称"导入库")。静态库是一个或者多个obj文件的打包,所以有人干脆把从obj文件生成lib的过程称为Archive,即合并到一起。比如你链接一个静态库,如果其中有错,它会准确的找到是哪个obj有错,即静态lib只是壳子。动态 阅读全文
posted @ 2013-11-21 10:49 DoubleLi 阅读(478) 评论(0) 推荐(0)

摘要: DLL的动态链接有两种方法。一种是加载时动态链接(Load_time dynamic linking)。Windows搜索要装入的DLL时,按以下顺序:应用程序所在目录→当前目录→Windows SYSTEM目录→Windows目录→PATH环境变量指定的路径。 前天看到这几句,突然设计出一道自认绝妙的笔试题:"如果采用加载时动态链接的方式,Windows搜索要装入的DLL采用怎样的顺序?"这个是基础题,估计你很容易答出(答案就是上面的)。呵呵,我还有后着呢:"你是如何证明Windows搜索要装入的DLL遵循这样的顺序呢,说出你的证明步骤" 你可以思考一 阅读全文
posted @ 2013-11-21 10:47 DoubleLi 阅读(867) 评论(0) 推荐(0)

上一页 1 ··· 387 388 389 390 391 392 393 394 395 ··· 474 下一页