自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 论坛 (220)
  • 收藏
  • 关注

原创 Windows SDK笔记(二):在窗口上建立控件

一、概述 控件是子窗口,它们是系统已经定义好的窗口类,因此不需要注册、也不需要写消息处理函数。在主窗口得到WM_CREATE消息时,建立子窗口即可。 二、实例 //参数:窗口句柄,消息,消息参数,消息参数LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){ //处理感兴趣的消

2004-12-17 09:26:00 912

转载 [转贴]关于用VC对图像进行裁剪

由于用户的要求,需要采集图像,可以采集到的图像有很大一部分黑色的边框,用户需要把它裁掉,这可难到了我,找了很多资料,也没有现在的东西可用(哈哈,中国的程序员就是这样!),包括CSDN网站搜过,codeproject上search过,也Google了办天,没有找到很合适的函数或是库,        在网上下了几个例子,关于图像显示、旋转、缩放的,看了看,还是没明白所以(主要是还是对图像的结构没有弄清

2004-12-14 11:15:00 945

转载 [转贴]Skin技术实现框架(五)

接上篇,控件类的接口有了:CWidgetHookBase,产生控件对象的工厂也有了,下面就该实现控件类了。在上篇定义控件基类的时候,我们只定义了一个抽象函数Install,而没有任何其他代码,那么,所有的实现代码都交给各个控件类去实现吗?不是的,这些控件类还有许多公共代码可以在基类实现,但是,我们选择不在CWidgetHookBase中加入这些代码,而是再加入一个中间类:CWidgetHook。为

2004-12-14 10:27:00 1040

转载 [转贴]Skin技术实现框架(完)

有过去一个周末了,昨天去看跳水比赛,现场的气氛还是不错的。可惜田亮没有来,否则,光看看观众席的fans也是一种享受啊。废话结束,进入正题,今天讲点以前没说清楚的内容。上次提到了消息反射,但没有深入,这个概念是这样的,许多窗口控件会向父窗口发送一些消息,比如WM_COMMAND消息和WM_NOTIFY消息,通知父窗口一些事件。因为是发给父窗口的,所以控件窗口的过程函数不能捕捉到这些消息。但是,经常我

2004-12-14 10:27:00 1125

转载 [转贴]Skin技术实现框架(四)

 今天有点空了,继续写。上次我们已经得出了基本的设计,由此确定了每种窗口必须有一个类来与之对应,这里所说的窗口种类是按照窗口的windows class名称来区分的,class名称相同的就认为是一种窗口。这种分类方法和我们看到的窗口种类可能有一些差异,例如,普通按钮,单选按钮和复选框的类名都是“Button”,对于这种情况,我们仍然用一个类来对应这些窗口,而在类内部区分对待这些不同的窗口。这样,我

2004-12-14 10:26:00 1010

转载 [转贴]Skin技术实现框架(三)

上次说了hook和窗口类的原理,有了hook,我们可以截取所有消息,有了窗口类,我们可以识别窗口类型,不同类型的窗口给予不同处理。这样,我们要在钩子函数里面识别不同的窗口和不同的消息,有大量的分派工作,更要命的是,光区分窗口类还不够,同类型的不同窗口经常需要不同的处理,例如两个button窗口,大小不同,文字不同,是否有鼠标按下不同...... 这些状态有些是可以从button窗口读到的,例如大小

2004-12-14 10:20:00 1250

转载 [转贴]Skin技术实现框架(二)

原理上次基本上是些介绍,也就是废话,今天讲讲实现Skin的基本原理吧。要实现自己独特的界面,方法有很多啦,上次也说过,这里只讲一种,就是通过消息钩子改变已有控件的外观。这种方法的好处是可以不必修改程序已经完成的标准界面,只要把钩子函数挂上,所有的界面就都变了,使用起来非常方便。这里的基本原理就是下面这个调用:SetWindowsHookEx(WH_CALLWNDPROC, HookProc,

2004-12-14 10:19:00 1362 1

转载 [转贴]Skin技术实现框架(一)

本来想把代码和E文的文章提交到codeproject再写,不知道为什么,这两天codeproject提交向导一直有问题,也罢,先开始写原理吧,反正恐怕也要写几天的前言嘿嘿,估计今天写不了多少,就叫前言吧,下次再写原理说到skin技术,大家都不会陌生,最早接触这东西,可能是winamp吧,可以灵活的更换界面风格,非常的花哨。后来使用skin的软件就越来越多了,毕竟做一个漂亮的界面对软件还是很

2004-12-14 10:15:00 1515 1

转载 [转贴]SkinX, an infrastructure of skin package

IntroductionIm not sure what kind of technology they used in those commercial skin components, but this artical will give you one implementation of such skin framework. The code is part of an inc

2004-12-14 09:54:00 873

原创 消除屏幕闪烁

由于作图过于复杂和频繁,所以时常出现闪烁的情况,一些防止闪烁的方法,如下:(1)将Invalidate()替换为InvalidateRect()。Invalidate()会导致整个窗口的图象重画,需要的时间比较长,而InvalidateRect()仅仅重画Rect区域内的内容,所以所需时间会少一些。不要为一小块区域的重画就调用Invalidate(),不愿意自己去计算需要重画的Rect,事实上

2004-12-09 13:39:00 1558

原创 解决Windows 程序界面闪烁问题的一些经验 (转载)

一般的windows 复杂的界面需要使用多层窗口而且要用贴图来美化,所以不可避免在窗口移动或者改变大小的时候出现闪烁。先来谈谈闪烁产生的原因原因一:如果熟悉显卡原理的话,调用GDI函数向屏幕输出的时候并不是立刻就显示在屏幕上只是写到了显存里,而显卡每隔一段时间把显存的内容输出到屏幕上,这就是刷新周期。一般显卡的刷新周期是 1/80秒左右,具体数字可以自己设置的。这样问题就来了,一般

2004-12-06 09:46:00 684

原创 美化CListCtrl中显示的焦点行

经常使用ClistCtrl来显示大量的数据,但是总感觉焦点行的背景颜色为蓝色,显示的效果挺难看的,参考《MFC技术内幕》这本书中的例子,自己修改了ClistCtrl的OnPaint代码,把焦点行改为白色的背景,加了一个矩形的边框,下面实际的效果,自我感觉还不错;    实现思路:1、  首先调用Default,让ClistCtrl自己画2、  调用GetDC()函数获得DC

2004-12-02 10:05:00 1370 1

原创 在CScrollView中使用双缓存画图的拖动问题

 原因:    在CScrollView中需要画图功能,而且画图的大小超过屏幕的实际大小,为了解决屏幕闪烁的问题,采用了双缓存画图的方法(在内存首先画出图象,然后粘贴到屏幕上),然而,当拖动滚动条的时候,产生了屏幕重叠的问题,下面是具体的解决方法;思路: 首先在OnDraw函数中画图,下面是简单步骤;1、  使用CreateCompatibleDC函数,生成一个内存DC2、

2004-12-01 10:46:00 2084

空空如也

做一个ftp客户端程序,如何计算平均速率、当前速率啊?

发表于 2005-06-26 最后回复 2019-10-19

如何查询日期型数据,SQL语句怎么写?

发表于 2001-01-06 最后回复 2014-02-14

谁知道Neo4j的db文件格式啊?

发表于 2013-03-29 最后回复 2013-08-10

调用Corba接口传递的参数为const CORBA::WChar *,里面包含的是中文,如何显示?

发表于 2008-09-20 最后回复 2013-03-29

上海外企高薪急聘:Java Senior Software Engineer和SCM Engineer[11月15日前有效]

发表于 2009-10-26 最后回复 2013-03-29

紧急,我再装nt,它的cd码是什么?

发表于 2001-01-05 最后回复 2012-11-23

windows2000 Advanced Server+SP4+iis不能访问Asp页面,可以访问htm页面,为什么?

发表于 2004-09-16 最后回复 2012-11-23

CFtpFileFind列文件名称错误问题?

发表于 2007-06-22 最后回复 2008-09-20

ftp上传文件如何限制上传的速率?

发表于 2006-05-23 最后回复 2006-05-23

使用ScrollView,拖动滚动条,图形重叠的问题?

发表于 2004-11-22 最后回复 2004-12-10

一个团队使用vc开发中源代码管理工具的问题?

发表于 2004-11-16 最后回复 2004-11-23

win32动态连接库传递参数的问题

发表于 2004-06-28 最后回复 2004-06-29

什么是线性方程,什么是非线性方程啊?

发表于 2004-06-14 最后回复 2004-06-20

如何设计多种语言版本的系统?

发表于 2004-04-29 最后回复 2004-04-29

一个list错误

发表于 2004-03-29 最后回复 2004-04-01

如何获得list中第n个对象?

发表于 2004-03-29 最后回复 2004-03-31

std::list的问题

发表于 2004-03-29 最后回复 2004-03-29

PLC问题?

发表于 2004-03-24 最后回复 2004-03-27

DNS和网关的关系?

发表于 2004-03-22 最后回复 2004-03-22

在vc里面有没有实现STL的树的template?

发表于 2004-03-16 最后回复 2004-03-17

__declspec( property( get=get_func_name, put=put_func_name ) ) declarator,讨论?

发表于 2004-03-11 最后回复 2004-03-11

在CScrolliew中,OnDraw和OnPaint有什么区别啊?

发表于 2004-03-05 最后回复 2004-03-05

使用CScrollView的问题

发表于 2004-03-04 最后回复 2004-03-05

SGI种construct的问题!

发表于 2004-03-02 最后回复 2004-03-02

如何使用Directx截取屏幕并保存为bmp或avi?

发表于 2004-01-31 最后回复 2004-02-28

有没有这样的软件,一个程序在播放mp3,同时这个程序录音?

发表于 2004-02-25 最后回复 2004-02-28

哪里有I、P、B帧的资料啊?

发表于 2004-02-23 最后回复 2004-02-23

Sleep和OnTimer的问题?

发表于 2003-12-24 最后回复 2003-12-26

如何创建在Asp中用CreateObject调用的dll库啊?

发表于 2003-10-07 最后回复 2003-11-28

使用ATL开发ASP组件的问题!

发表于 2003-10-08 最后回复 2003-10-21

提供给用户下在文件的问题?

发表于 2003-10-20 最后回复 2003-10-21

ftp穿过单位的防火墙和公网的ftp服务器相连,怎么通过防火墙呢?

发表于 2003-10-11 最后回复 2003-10-13

有10盒子,44个乒乓球,能不能把44个乒乓球放到盒子里去,使每个盒子里的乒乓球数都不相等?

发表于 2003-09-29 最后回复 2003-09-30

难题,如何实现控件的事件啊?

发表于 2003-09-28 最后回复 2003-09-29

请问大家通过用户需求调研该如何确定表结构?怎样调研用户需求的表结构?

发表于 2003-09-23 最后回复 2003-09-25

如何注册自己创建的文件类型的默认打开文件啊?

发表于 2003-04-04 最后回复 2003-09-20

特难的问题,我的对话框上的ListCtrl和CComboBox的刷新问题?

发表于 2003-03-26 最后回复 2003-09-20

我在Debug下不能添加BreakPoint,为什么啊?

发表于 2003-05-07 最后回复 2003-09-20

我用MFC做的运行时不显示的Active控件,如何得到HWND?

发表于 2003-04-29 最后回复 2003-09-20

我想做一个不能拖动大小的控件,就是说用户不能改变其大小?

发表于 2003-04-14 最后回复 2003-09-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除