Win32开发入门(10) 绘图(C)
今天我们来欣赏一下用于填充图形的函数,当然我不会逐个去介绍,因为我们参考MSDN直接套参数 就可以了。
SetDCBrushColor函数有必要扯一下,它的声明如下:
COLORREF
SetDCBrushColor(
__in HDC hdc,
__in COLORREF crColor
);
第二个参数,通过RGB宏产生COLORREF传进去就可以了,比如这样:
SetDCBr ...
Win32开发入门(24):计时器
有好些时间没写博客了,今天要来耍一下计时器,就是我们常说的Timer,它虽然不是什么复杂的东 西,也称不 上牛X,不过,用处还是不少的,对于那些需要每隔一定时间执行一次的任务,那是相当有 用。
先来认识一下一对函数,注意,是一对,不是一个。
SetTimer——设置并启用计时 器;
KillTimer——取消计时器。
现在你明白 ...
Win32开发入门(14):用对话框作为主窗口
前面我们在编写Win32应用程序的思路都是:
1、设计窗口类。2、注册窗口类。3、创建窗口 。……
然而,当我们接触控件以后, 会发现一个问题,我们在窗口上放置控件实在不好弄,而 资源中的对话框具有图形编辑器,操作起来相对方便。
于是,就有了一个想法:把对话框用作 主窗口,那我们在布局控件时就轻松了。
其实这想法在 ...
RGB565,RGB24和RGB32的量化压缩与量化补偿
关于RGB565,RGB555, RGB888,RGB32的转换,在我的前一篇博文中我已经介绍过了关于RGB565->RGB888的步骤和思想。
今天上午又研究了一个上午,就谢了下来,希望能给需要帮助的哥们一点小小指导,当然了..也期待着高手过来拍砖。
关于RGB的一点介绍:
RGB色彩模式(也翻译为“红绿蓝”,比较少用)是工业界的一种颜色标准,是 ...
globalalloc、malloc和new的区别
GlobalAlloc
是为了与Win16兼容才保留的,在Win32下不要使用。 全局内存对象使用GlobalAlloc函数分配,在 Windows 3.X的时代,分配的内存可以有两种,全局的和局部的,例如GlobalAlloc和LocalAlloc。但在Win32的时代这些函数已 经被废弃了,现在的内存只有一种就是虚存。在Win32中所有的进程所使用的内存区域是相互隔离的, ...
Win32开发入门(17):启动和结束进程
这里我再次说明一下,我不知道为什么,现在的人那么喜欢走极端,估计是价值观都“升级”了的 缘故吧。
我撰写这一系列Win32相关的文章,并不是叫大家一定要用Win32去开发项目,仅仅是 给大家了解一下,Win32是个啥东西而已。
另外,在专访中,有些人也误认为我说C++非学不可 ,那也不是,我也提到过了,C++的学习可以使你懂 ...
Win32开发入门(7) 多边形窗口
通常情况下,窗口都是一个矩形,不过,调用下面这个函数,可以自定义窗口的形状。
int SetWindowRgn(
__in HWND hWnd,
__in HRGN hRgn,
__in BOOL bRedraw
);
第一个参数是窗口的句柄,第二个参数也是一个句柄——HRGN,一个多边形的区域,可 以用CreatePolygonRgn函数来创建。第三个 ...
Win32开发入门(4) 创建菜单
我们当然知道 ,现在,在实际开发中肯定不会像我这样写Win32程序的,你看,连个WinMain都要N行代码。但很多人 不明白什么叫学习,什么叫探索。实际上,通常能用于实际开发中的技巧只是占我们对客观世界的认识 总和不到20%,所以,如果你有兴趣计算一下,估计有80%的知识你不知道用到哪里去了。就算我们今后 不会把Win32程序 ...
C/C++字符串处理之std::vector与std::StringBuilder
引子
std::StringBuilder 基于 std::vector 实现。所以尽管本文讨论 std::vector,但是所有的结论对 std::StringBuilder 同样有效。
实现概要
简单来讲,std::vector 是一个动态数组,管理的是一块线性的、可 动态增长的内存。
如何加速 std::vector?
使用 vector::reserve
在大致可预估 vector 大小时,在插 入数据前,应 ...
C/C++字符串处理之std::deque与std::TextPool
引子
std::TextPool 基于 std::deque 实现。所以尽管本文讨论 std::deque,但是所有的结论对 std::TextPool 同 样有效。
实现概要
顾名思义,这是一个“双向队列(double-ended queue)”。这意味着从队列开始 和结束处插入(删除)数据的性能很好。为了达到这个目的,std::deque 基于一种分段连续的、介于数组和链表之间的 ...
PCM音频设备的操作函数
对音频设备的操作主要是初始化音频设备以及往音频设备发送 PCM(Pulse Code Modulation)数据。为了方便,本文使用 ALSA(Advanced Linux Sound Architecture)提供的库和驱动。在编译和运行本文中的 MP3 流媒体播放器的时候,必须先安装 ALSA 相关的文件。
本文用到的主要对 PCM 设备操作的函数分为 PCM 设备初始化的函数 ...
Win32开发入门(20):浏览文件夹
最近忙于一些相当无聊的事情,还没忙完,不过,博客还是要写的,不然我头顶上会多了几块砖头 。
在上一篇博文中,我们浏览了文件,今天我们也浏览一下目录,如何?
浏览目录我们 同样有两个规矩,用托管类库的我就不说了,相信大家两分钟就能弄好。重点还是说说第二个规矩,用 API方式。我们用到的是Shell函数,一提到Shell ...
OpenCV 矩阵:图像的基本
我们有很多方式可以从现实生活中得到图片,数码相机,扫描仪,或者我们几乎人手有一部的手机。然而,当生活中的图在数字设备上存储的时候,一幅图片被分成了很多很多的像素点,像素点就像拼图的时候的碎片,一个个碎片来构成一副图。而每个像素点都是由一个0-255的数字值来表示。在openCV中,一个图片被很多像素点表示,这 ...
Win32开发入门(16):ListView的多个视图
在上一个例子中,我们只用到了ListView的Report视图,也就是详细视图。本文我们再把上一篇文 章中所用的例子进行一下扩展,例子源码可以到俺的资源区下载。
我们为ListView中显示的数 据加上图标,并且允许用户选择显示哪种视图,如大图标,小图标,详细信息等。
因为代码还 比较长,我也不希望把代码全部放出来,在写完本 ...
HTML颜色格式#FFFFFF转换为COLORREF方法
老土的方式:
szColor.Replace("#", "");
int iArrColor[6] = {0};
TCHAR hexSeed[] = _T("0123456789ABCDEF");
for (int i = 0; i
新思路:
CString m_BackColor.m_frame_color = "#0290D8";
DWORD r,g,b;
sscanf(m_BackColor.m_frame_color,"#%2X%2X%2X",&r,&g,&b ...
Qt的文本编辑器(上)
今天开始呢,我们就开始用Qt做两个比较实用的东西,这一篇我们主要探究下文本编辑器的实现。
首先我们来看下我们的大致框架:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow();
protected:
void closeEvent(QCloseEvent *event);
对于所有定义的信号和槽 ...
LWA_COLORKEY undeclared identifier 的解决办法
SetWindowLong(this->GetSafeHwnd(),
GWL_EXSTYLE,
GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);
HINSTANCE hInst = LoadLibrary("User32.DLL");
if(hInst)
{
typedef BO ...
Win32开发入门教程
Win32开发入门(1) 关于C++的几个要点
Win32开发入门(2) 完整的开发流程
Win32开发入门(3) 窗口的重绘
Win32开发入门(4) 创建菜单
Win32开发入门(5) 具有单选标记的菜单
Win32开发入门(6):创建右键菜单
Win32开发入门(7) 多边形窗口
Win32开发入门(8) 绘图(A)
Win32开发入门(9) 绘图(B)
Win32开发入 ...
OpenCV, color reduction method
目标:
这次学习的目标是回答下面的几个问题:
1 图片像素是如何被扫描的?
2OpenCV 矩阵值如何被存储?
3如何衡量算法的性能?
4什么是查找表和为什么要用他们?
看完这篇,希望能够解决上面的这些问题。
正文:
首先我们考虑一下简单的色彩降低方法(color reduction method,翻译的不好请指正),如果使用的是c或c++无符 ...
目标检测:HOG特征和OpenCV中的实现
关于HOG特征可以看http://blog.csdn.net/zouxy09/article/details/7929348和http://www.cnblogs.com/tornadomeet/archive/2012/08/15/2640754.html,
关于OpenCV HOGDescriptor参数图解可以参考这里http://blog.csdn.net/raodotcong/article/details/6239431;
现在利用HOG特征来进行行人检测,既然要有了特征,现在其实要 ...