- 博客(89)
- 资源 (2)
- 收藏
- 关注
转载 WM_CTLCOLOR和OnCtlColor消息的用法
WM_CTLCOLOR消息用来完成对EDIT、STATIC、BUTTON等控件设置背景和字体颜色,其用法如下:1.首先在自己需要设置界面的对话框上点击右键-->建立类向导-->加入WM_CTLCOLOR消息-->自动生成OnCtlColor()函数,此函数可以对本对话框的控件的界面外观做修饰,用法如下:将类向导产生的函数做如下修改: HBRUSH CDialogColor::OnC
2015-06-10 10:40:39
792
转载 OpenGL硬件加速
Windows 下常用的OpenGL库有两种,MS实现的和SGI实现的,MS-OpenGL调用会自动检测是否存在显示卡制造商提供的ICD(Installable Client DeviceDriver)驱动程序,有则调用ICD中的例程,否则使用CPU进行计算,所以能利用显示卡的OpenGL加速能力。对开发者来说使用方法并没有区别,只是有ICD驱动时更快些。SGI的版本是纯软件实现,不能利用硬件加速
2015-01-04 09:36:54
5096
原创 VC导出类得创建和使用
一、DLL的不同类型 使用MFC可以生成两种类型的DLL:MFC扩展DLL和常规DLL。常规DLL有可以分为动态连接和静态连接。Visual C++还可以生成WIN32 DLL,但不是这里讨论的主要对象。1、MFC扩展DLL 每个DLL都有某种类型的接口:变量、指针、函数、客户程序访问的类。它们的作用是让客户程序使用DLL,MFC扩展DLL可以有C++的接口。也就是它可以导出
2014-12-21 22:48:46
714
转载 MFC RadioButton用法详解
基础介绍:radio button通常都是成组使用的,在一组里面是互斥的。分组的原则是:1、首先将RadioButton控件定好Tab顺序,具体方法:工具栏“格式”—>“Tab键顺序”选项选中,然后按照预定的顺序依次点击对话框上面的RadioButton按钮,Tab键顺序设定完成。2、按照上面的Tab键顺序进行分组,然后设定每组第一个RadioButto
2014-12-10 10:39:24
1315
原创 HALCON 算子函数-image
1. get_grayval功能:获取一个图像目标的灰度值。2. get_image_pointer1功能:获取一个通道的指针。3. get_image_pointer1_rect功能:获取图像数据指针和输入图像区域内最小矩形内部的图像数据。4. get_image_pointer3功能:获取一个彩色图像的指针。5. get_imag
2014-11-19 09:58:27
1366
转载 同步和异步的区别
同步和异步的区别:1、同步就是说多个任务之间是有先后关系的,一个任务需要等待另一个任务执行完毕才能继续执行。2、异步就是说多个任务之间没有先后关系,不需要相互等待各做各的事。同步编程方法:1、信号量2、互斥量异步无需考虑资源冲突,不需特别处理。
2014-09-28 16:14:50
744
转载 PostMessage与PostThreadMessage的区别
消息队列是属于线程的,Post消息就是把消息放到目标线程的消息队列中。这两者的区别在于,PostMessage通过指定目标窗口句柄来确定目标线程,通常情况下由窗口过程来处理消息;PostThreadMessage直接指定线程ID来确定目标线程,没有目标窗口,只能在消息循环中直接根据消息类型做相应的处理。在程序设计的选择方面,如果是UI线程,则应使用PostMessage;如果是工作线程,则应使用P
2014-09-28 15:38:50
758
原创 vs2010编译notepad++源代码
1官网下载源码http://notepad-plus-plus.org/download/v6.6.9.html
2014-09-18 12:14:56
1229
转载 MFC从数据库里导出excel文档
[cpp] view plaincopyvoid CPctoolDlg::OnUserExcell() { if(!m_ExlApp.CreateDispatch("Excel.Application",NULL)) { AfxMessageBox("创建Excel服务失败!");
2014-07-14 10:57:33
891
转载 sqlite的事务和锁
事务 事务定义了一组SQL命令的边界,这组命令或者作为一个整体被全部执行,或者都不执行。事务的典型实例是转帐。 事务的范围 事务由3个命令控制:BEGIN、COMMIT和ROLLBACK。BEGIN开始一个事务,之后的所有操作都可以取消。COMMIT使BEGIN后的所有命令得到确认;而ROLLBACK还原BEGIN之后的所有操作。如: sqlite> BEGIN; sqlite
2014-07-11 13:52:11
553
转载 sqlite3-实现C++类封装
一、前言: 今天试了下如何用C++类实现接口封装,感觉蛮好 。用于封装的类主要有两个,SQLiteStatement类和SQLiteWrapper类,是一个老外写的。我看了下源码,主要是对C接口进行了封装,好处自然不用说,可以重用。很佩服老外的技巧,在这里就引用下他们的代码供大家分享下他们的思想。源代码链接: http://www.adp-gmbh.ch/sqlite/wra
2014-07-11 09:23:13
1343
转载 ROI区域图像叠加&初级图像混合
在这篇文章里,我们一起学习了在OpenCV中如何定义感兴趣区域ROI,如何使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像混合操作。PS:文章末尾提供了博文配套程序源代码的下载。文章开头,依旧是先放一张截图: 一、
2014-06-23 15:41:09
976
转载 图像的载入,显示和输出 一站式完全解析
这篇文章中,我们将详细而深入地弄懂入门OpenCV2最基本的问题,那就是图像的载入,显示和输出。PS:文章末尾提供了博文配套程序源代码的下载。依然是先看一张运行截图:了解过之前老版本OpenCV的童鞋们都应该清楚,对于OpenCV1.0时代的基于 C 语言接口而建的图像存储格式IplImage*,如果在退出前忘记relea
2014-06-23 14:07:16
905
转载 CvArr、Mat、CvMat、IplImage、BYTE转换
一、Mat类型:矩阵类型,Matrix。 在openCV中,Mat是一个多维的密集数据数组。可以用来处理向量和矩阵、图像、直方图等等常见的多维数据。 Mat有3个重要的方法: 1、Mat mat = imread(const String* filename); 读取图像 2、imshow(const st
2014-06-20 16:18:09
533
转载 VS2010平台下OpenCV编译和安装
要点: 1) XP+ Visual Stuio 2010 + OpenCV-2.4.2.exe + cmake-2.8.8-win32-x86.exe 2) 如何CMake OpenCV源代码得到可编译的VS2010项目 3) 如何使用VS2010编译OpenCV源码 4) 如何配置O
2014-06-20 14:35:03
579
转载 CString字符串截取
文件xxxx.dll去掉后面的.dll方法1、char str[] = "xxxx.dll"char*p;p=strrchr(str, '.');*p = 0;方法2、CString str="xxxx.dll";int n = str.ReverseFind('.')str = str.Left(str.GetLength()-n-1);例程2:(
2014-06-20 13:35:17
685
转载 vc状态栏的使用
状态栏位于主框架窗口的底部,主要用来显示一些提示信息,可细分为几个窗格。状态栏一般用于简要解释被选中的菜单命令、工具栏按钮命令,以及当前的操作对象的状态。另外,它还会显示 Scroll Lock、Num Lock、Caps Lock和Insert等键盘上特殊按键的状态。状态栏也是一个窗口,它有几个窗格,每个窗格显示不同的信息。类向导会为应用程序自动创建一个状态栏,该状态栏包括几个窗格,分别用来
2014-06-20 11:17:49
1600
转载 关于控件OnCtlColor
OnCtlColor在MFC类库提供了CWnd::OnCtlColor函数,在工作框架的子窗口被重画时将调用该成员函数.因此可以重载WM_CTLCOLOR消息的响应函数.此函数的原型:afx_msg HBRUSH OnCtlColor(CDC *pDC,CWnd *pWnd,UINT nCtlColor); 参数nCtlColor用于指定控件的类型,可以是:.CTLCOLOR_
2014-06-19 14:44:03
609
转载 VC MFC滑块(CSliderCtrl)控件
CSliderCtrl类里相关函数解释void CSliderCtrl::SetRange( int nMin, int nMax, BOOL bRedraw = FALSE );//设置滑块范围,nMin最小值,nMax最大值int CSliderCtrl::GetPos( ) const;//获取滑块位置void CSliderCtrl::SetPos( int nPo
2014-06-16 13:18:40
2716
转载 关于ScreenToClient
顾名思义:ScreenToClient也就是Screen(屏幕坐标) 到 Client(客户区坐标)的转换。也就是说这个函数可以把你在屏幕上鼠标的位置转换为你打开的程序的客户区的坐标(位置)。
2014-06-12 11:23:21
1771
转载 MFC 获取当前工作路径和可执行文件路径
1. 获取Debug或Release所在的路径CString GetModuleDir() { HMODULE module = GetModuleHandle(0); char pFileName[MAX_PATH]; GetModuleFileName(module, pFileName, MAX_PATH); CString csFullPath(pFi
2014-06-11 16:26:48
754
转载 MFC中CTreeView的使用
(一)树控制的主要功能树控制和视(Tree Control&View)主要用来显示具有一定层次结构的数据项,如资源管理器中的磁盘目录等,以供用户在其中进行各种选择。树控制中的每个数据项包括数据项名称的文本字符串和用于表示该数据项的图像,每个数据项下面均可包含各种子项,整个结构就象目录树一样。对于包含各种子项的数据项,可通过鼠标双击来展开或合拢,这可以通过控制树的不同风格来实
2014-06-10 13:28:48
1702
转载 ini配置文件常用的四个函数
虽然ini配置文件正在逐渐地被注册表所代替,在MSDN中也说明操作ini文件的API函数都是为了兼容16位的,但ini文件并没有退出舞台,还是广泛地应用于软件开发中。下面为我日前写小程序时因为要操作到ini文件而整理的四个常用API函数。现在网上关于这方面的资料也很多,也有较多的免费CIniFile类,我算是来凑个热闹
2014-05-28 10:16:09
790
转载 基于socket的图片传输系统设计
一.设计思路。本设计利用了socket通信的原理,通过socket建立一个服务端和客户端相互通信并发送图片最后在QT上显示。设计用到知识有:socket编程、多进程的编程、多路I/O复用、QT的编程。二.部分知识解析。①socket通信实质以及过程介绍。Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP
2014-05-28 10:09:31
1285
转载 用VC创建文件夹
#include #include void main(){char tmp[28]={0},c[]="foldername";sprintf(tmp,"mkdir %s",c);system(tmp);}
2014-05-27 16:01:09
933
转载 MFC PreTranslateMessage(MSG* pMsg)中调用DoModal()模态窗口问题
在PreTranslateMessage(MSG* pMsg)中调用DoModal()模态窗口如下: 1 BOOL CMainDlg::PreTranslateMessage(MSG* pMsg) 2 { 3 // TODO: Add your specialized code here and/or call the base class 4 if
2014-05-26 19:08:15
1644
转载 关于PreTranslateMessage
PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当你需要在MFC之前处理某些消息时,常常要在这里添加代码. MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数,我们可以改变MFC的消息控制流程,甚至可以作一个全新的控制流出来。只有穿过消息队列
2014-05-22 17:10:56
577
转载 OffsetRect的使用
OffsetRect函数将指定的矩形移动到指定的位置BOOL OffsetRect(LPRECT lprc, // 矩形int dx, // 横向偏移int dy // 纵向偏移);参数:Lprc:[输入输出]指向一个RECT结构,其中包含了被移动矩形的逻辑坐标Dx:[输入]指定的矩形左右移动的量。当向左移动的时候,这个参数必须是一个
2014-05-22 16:46:34
1893
转载 ScrollBar的使用
在对话框中添加一个垂直滚动条控件,关联一个变量CScrollBar m_vScroll,在头文件定义CRect rt_mvScroll保存滚动条控件的位置,定义一个int nVscroll,保存滑块的位置在OnInitDialog()里面添加[c-sharp:firstline[1]] view plaincopyCRect rect
2014-05-21 16:54:54
575
转载 VC调试无法进入断点解决方法。
以前也碰到过同样的问题,但没有问个为什么,也没有探个究竟。昨天调试一个DLL,添加输出信息吧,太麻烦而且不容易定位,但设置断点后按“F5”,断点不可用,气泡提示“当前不会命中断点,还没有为该文档加载任何符号。”再右键->“位置”->“允许源代码与原始版本不同”,还是不行。77777我还不信了,整它! 后来才发现,“Alt+F7”->“配置属性”->“调试”->“命令”中输入的 exe
2014-05-20 10:41:03
728
转载 内存函数memset
函数介绍void *memset(void *s, int ch, size_t n);函数解释:将s中前n个字节 (typedef unsigned int size_t)用 ch 替换并返回 s 。memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法
2014-05-20 09:21:30
463
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人