DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  4737 随笔 :: 2 文章 :: 541 评论 :: 1614万 阅读
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

10 2013 档案

摘要:MFC库里没有符合这个条件的控件,于是我自己写了一个,初步测试有效。注:可以设置透明背景,但还不能做到透明度设置(如50%透明度) 如果设置了背景色,就不保留透明背景 默认背景色是透明的[cpp]view plaincopy//设置背景色(若clr为CLR_NONE,则背景透明)voidSetBackgroundColor(COLORREFclr){m_clrBackground=clr;}//设置文字前景色voidSetTextColor(COLORREFclr){m_clrText=clr;}//设置文字字体voidSetFont(CStringstrFaceName,LONG... 阅读全文
posted @ 2013-10-31 00:08 DoubleLi 阅读(10645) 评论(0) 推荐(0) 编辑

摘要:非模态对话框需要重载OnCanel方法, 并调用DestroyWindow, 且不能调用基类的OnCanel重载PostNcDestroy, 需要delete掉this指针// Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CDlgTest) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support virtual void PostNcDestroy(); //}}AFX_VIRTUA 阅读全文
posted @ 2013-10-30 16:26 DoubleLi 阅读(480) 评论(0) 推荐(0) 编辑

摘要:(一)问题的提出:OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分,一点参考价值都没有,怎么办?(二)解决的思路:1.自己进行研究,不指望网络有现成的馅饼,因为那里多了去的陷阱,很可恶。2.要解决的关键问题是slider滑动条控件如何与视频播放实时结合在一起: ①主窗体的OnHScroll()响应函数负责响应slider滑动条的变化,这样就轻松搞定slider控件与拖动滑动条动作与视频播放的联动。 ②新建虚拟的slider实例和slider滑动位置的全局变量,通过数 阅读全文
posted @ 2013-10-30 10:21 DoubleLi 阅读(624) 评论(0) 推荐(0) 编辑

摘要:在程序中发现一下代码:int CHmcVideoMgt ::OnGetDiskRunningInfo( SOCKETPARAM *pSocketInfo ,Json:: Value Param ){ int iArrayLen = Param[ _T("NUM" )].asInt(); ..... LPDiskRunningInfo pDiskRunningInfo = new DiskRunningInfo[iArrayLen ]; int nResult = HMCBLL_GetDiskR... 阅读全文
posted @ 2013-10-25 17:39 DoubleLi 阅读(2192) 评论(0) 推荐(0) 编辑

摘要:第一种方式多进程模式下,在IE8打开web页面, 然后在调试菜单选择附加到进程, 这时看到2个IE进程, 选择没有带标题的, 也就是主进程, 就可以正常调试了.此方式比较麻烦, 不能F5直接启动IE调试.第二种方式设置IE8为单进程模式, 可以F5直接调试.首先,定位到注册表键:HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main然后在该键值下添加一个键值如下:名称:TabProcGrowth类型:REG_DWORD值: 0 阅读全文
posted @ 2013-10-25 17:37 DoubleLi 阅读(605) 评论(0) 推荐(0) 编辑

摘要:IE8的一个重要特性就是每个Tab(选项卡)在独立的进程中运行,我们称之为LCIE(Loosely-Coupled IE)。 所以大家在升级到IE8之后会发现资源管理器里面有两个或者多个iexplore.exe进程。LCIE 的好处在:1)某个Tab 崩溃(crash)之后不会影响其他Tab 和IE主窗口2)Tab 进程在Vista 和Windows 7 下面以 Low Integrity Level 运行,这种进程基本上无法对系统进行任何读写操作,可以严格把病毒木马拒之门外。 这也就是大家所谓的"沙盘"技术。 插一句题外话:) 很多人认为"沙盘"技术是 阅读全文
posted @ 2013-10-25 17:35 DoubleLi 阅读(2297) 评论(0) 推荐(0) 编辑

摘要:软件调试是我们软件开发过程中的重要一课。在前面,我们也讨论过程序调试,比如说这里。今天,我们还可以就软件调试多讲一些内容。比如说条件断点,数据断点,多线程断点等等。[cpp]view plaincopy #includeintvalue=0;voidtest(){inttotal;intindex;total=0;for(index=0;index【Advanced】; c)在【Expression】中输入DW(0x0043178),【ok】回车; d)F5继续运行程序,则程序会在value发生改变的时候停住。以局部数据total为例, a)按F10,运行程序,获取value的地址; b)Al 阅读全文
posted @ 2013-10-15 14:59 DoubleLi 阅读(758) 评论(0) 推荐(0) 编辑

摘要:很多的系统管理员可能认为命令行是程序员编程用的,这是不对的,其实命令行是另一种用来管理计算机的接口。1 命令行窗口 Windows NT/Windows 2000以后的操作系统为用户提供了两种命令行窗口:cmd.exe和command.com,CMD.EXE是Windows 窗口命令行接口,因此它可以通过窗口右上角的X来关闭,它不是一个dos窗口,而COMMAND.COM是一个16位的DOS应用程序,它用于支持老的dos应用程序,它必须通过命令行输入exit才可以退出,它一般运行于NTVDM中。但就用户来说,这两个命令有惊人的相似之处,如果用户运行command.exe,用户会在任务管理器中看 阅读全文
posted @ 2013-10-14 11:02 DoubleLi 阅读(1078) 评论(0) 推荐(0) 编辑

摘要:一. 在编程过程中经常需要格式对齐,这就需要把字符串格式成固定长度: 1: C++提供了setiosflags()来设置输出格式,setw(int)设置输出宽度: cout<<setiosflags(ios::left)<<setw(10)<<"字段1" <<setw(10)<<"字段2" <<setw(10)<<"字段3"<<endl;cout<<setiosflags(ios::left)<<setw(10)&l 阅读全文
posted @ 2013-10-13 16:11 DoubleLi 阅读(1135) 评论(0) 推荐(0) 编辑

摘要:当前流行的Windows操作系统能同时运行几个程序(独立运行的程序又称之为进程),对于同一个程序,它又可以分成若干个独立的执行流,我们称之为线程,线程提供了多任务处理的能力。用进程和线程的观点来研究软件是当今普遍采用的方法,进程和线程的概念的出现,对提高软件的并行性有着重要的意义。现在的大型应用软件无一不是多线程多任务处理,单线程的软件是不可想象的。因此掌握多线程多任务设计方法对每个程序员都是必需要掌握的。本实例针对多线程技术在应用中经常遇到的问题,如线程间的通信、同步等,分别进行探讨,并利用多线程技术进行线程之间的通信,实现了数字的简单排序。 一、 实现方法 1、理解线程 要讲解... 阅读全文
posted @ 2013-10-11 00:02 DoubleLi 阅读(574) 评论(0) 推荐(0) 编辑

摘要:本文示例源代码下载 CGridCtrl_demo19_01.zip为演示CGridCtrl的使用 CGridCtrl_demo19_02.zip演示与CMYODBC的配合使用 一、引言 在用vc开发关于数据库的项目时,通常我们只好用微软的DBGRID作为数据库表格控件,其实微软的DBGRID并不好用,想找一份好的帮助文档都找不到,并且界面并不友好,比起C++Builder中的DBGRID来说是逊色不少,但是DBGRID在开发数据库的项目中又是常用的控件,所以就一直想找一个好用的DBGRID,可是网上又没有找到。上次在无意中看到了CGridCtrl(一个很漂亮的表格控件,如果你还没有用过... 阅读全文
posted @ 2013-10-11 00:00 DoubleLi 阅读(863) 评论(0) 推荐(0) 编辑

摘要:当前许多应用程序都在使用树型控件时为其添加了背景位图,增强的控件的魅力,然而对于Visual C++编程爱好者来说,使用Visual C++MFC提供的树型控件(CTreeCtrl)本身就是一个难点,至于如何使该控件能够带有背景位图,那就更加是一个令人困惑的问题了。本实例对CTreeCtrl类进行了增强,不仅使它带有背景位图,而且解决了在点击树型控件时背景位图闪动的问题,另外,通过在对话框中使用该控件来显示三级目录,演示了树型控件的基本使用方法。下图为程序编译后的运行效果图: 图一、带背景图的树型控件效果图 一、实现方法 在实现树型控件的背景位图之前,我们首先介绍一下树型控件的基本... 阅读全文
posted @ 2013-10-10 23:56 DoubleLi 阅读(636) 评论(0) 推荐(0) 编辑

摘要:相信有过多线程编程经验的朋友,都吃过死锁的苦。除非你不使用多线程,否则死锁的可能性会一直存在。为什么会出现死锁呢?我想原因主要有下面几个方面: (1)个人使用锁的经验差异 (2)模块使用锁的差异 (3)版本之间的差异 (4)分支之间的差异 (5)修改代码和重构代码带来的差异 不管什么原因,死锁的危机都是存在的。那么,通常出现的死锁都有哪些呢?我们可以一个一个看过来,(1)忘记释放锁[cpp]view plaincopy voiddata_process(){EnterCriticalSection();if(/*errorhappens*/)return;LeaveCriticalSectio 阅读全文
posted @ 2013-10-10 19:27 DoubleLi 阅读(1789) 评论(0) 推荐(0) 编辑

摘要:一、死锁会在什么情况发生1、假设有如下代码mutex; //代表一个全局互斥对象 void A() {mutex.lock(); //这里操作共享数据 B(); //这里调用B方法 mutex.unlock(); return; } void B() { mutex.lock(); //这里操作共享数据 mutex.unlock(); return; }此时会由于在A、B方法中相互等待unlock而导致死锁。2、假设有如何代码 mutex; //代表一个全局互斥对象 void A() { mutex.lock(); //这里操作共享数据 if(.....) { return;}mutex.un 阅读全文
posted @ 2013-10-08 15:04 DoubleLi 阅读(8408) 评论(0) 推荐(0) 编辑

摘要:用VS编写C#时,可以用#region name和#endregion,将代码分段,这样可以将代码折叠起来,当类过大,方法过长时,这种方法可以提高阅读效率,是人看着更舒服。对于C/C++语言,#region失效。这不免让人郁闷。 VS对C/C++语言,默认仅折叠预处理命令(#include, #pragma等)、类、函数等。如果某个函数特别长,大大超出了屏幕范围,特别是多重循环时,很难确定哪个循环在哪终止,十分不便。 VS虽然没办法对C/C++语言像C#那样任意分段,任意折叠,但是支持大纲折叠。即支持if语句,循环语句的折叠。虽然不像C#那样方面,但也能将就着用了。 具体设置过程为:菜单栏,工 阅读全文
posted @ 2013-10-06 09:53 DoubleLi 阅读(1938) 评论(0) 推荐(0) 编辑

摘要:多线程编程之三——线程间通讯作者:韩耀旭原文地址:http://www.vckbase.com/document/viewdoc/?id=1707七、线程间通讯 一般而言,应用程序中的一个次要线程总是为主线程执行特定的任务,这样,主线程和次要线程间必定有一个信息传递的渠道,也就是主线程和次要线程间要进行通信。这种线程间的通信不但是难以避免的,而且在多线程编程中也是复杂和频繁的,下面将进行说明。使用全局变量进行通信由于属于同一个进程的各个线程共享操作系统分配该进程的资源,故解决线程间通信最简单的一种方法是使用全局变量。对于标准类型的全局变量,我们建议使用volatile 修饰符,它告诉编译器无. 阅读全文
posted @ 2013-10-05 23:25 DoubleLi 阅读(14380) 评论(0) 推荐(0) 编辑

摘要:http://sourceforge.net/apps/mediawiki/pyvision/index.php?title=FaceL:_Facile_Face_Labeling 原文地址:Related Open Source and Demo SoftwareThis is a short list of free or cheap webcam face recognition systems. The list includes some open source and commercial systems.OpenCV- OpenCV includes sample code th 阅读全文
posted @ 2013-10-05 10:59 DoubleLi 阅读(574) 评论(0) 推荐(0) 编辑

摘要:【感谢@吕抒真 的热心翻译。如果其他朋友也有不错的原创或译文,可以尝试推荐给伯乐在线。】 自从谷歌眼镜被推出以来,围绕人脸识别,出现了很多争议。我们相信,不管是不是通过智能眼镜,人脸识别将在人与人交往甚至人与物交互中开辟无数种可能性。 为了帮助研究过程中探索人脸识别,我们列出以下人脸检测和识别API。希望有所帮助! Face Recognition - 拉姆达实验室斯蒂芬弄的。示例代码和图形演示点击http://api.lambdal.com/docs,我们的API提供了面部识别,面部检测,眼睛定位,鼻子定位,嘴巴定位,和性别分类。如果您有任何疑问,只需发一封邮件到s@lambdal.c... 阅读全文
posted @ 2013-10-05 10:55 DoubleLi 阅读(1498) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示