- 博客(24)
- 资源 (27)
- 收藏
- 关注
转载 create与oncreate的区别
OnCreate 在view类中,create 是虚函数由框架调用,是用来“生成一个窗口的子窗口”。 <br /> oncreate 消息响应函数,是用来“表示一个窗口正在生成”。<br /> 某个CWnd的Create函数由当前CWnd的Owner调用, 而在CWnd::Create中,又会调用OnCreate函数,但是实际上这个时候Create函数还没有退出,CWnd的某些部分还没有创建好。所以,在ToolBar::OnCreate中,不能调用CommandToIndex,因为CommandToI
2010-11-25 11:23:00 5629 1
原创 WinCE5.0的 Imaging API 显示JPG BMP PNG 图片问题
IImage *pIImage; IImagingFactory *pIImgFactory; ImageInfo imageInfo; HBITMAP hResult; INT nImgWidth = GetSystemMetrics(SM_CXSCREEN); INT nImgheight = GetSystemMetrics(SM_
2010-11-24 20:51:00 1500
原创 wince下的 类型转换(未完陆续编辑中)
1.CString 转char 或wchat_t 再转 double,int ,wchar_t在wince下要实现CString转换到double 类型,原以为double _wtof(const wchar_t *str ),即可结果发现错误代码 error C386
2010-11-18 15:48:00 3833
转载 WinCE中用IImage如何旋转JPG图片
//JPG图片旋转功能void CImagingDemoDlg::OnBnClickedRotate(){// TODO: 在此添加控件通知处理程序代码HRESULT hr ; //返回结果IImagingFactory * pImagingFactory =NULL; //Image工厂接口对象IImage * pImage = NULL,* pNewImage = NULL; //Image接口对象;新的IImage图像IBitmapImage * pbmpImg = NULL,* pNewbmpImg
2010-11-17 09:40:00 1895
原创 error : Please use the /MD switch for _AFXDLL builds 的解决方法
<br />error : Please use the /MD switch for _AFXDLL builds 的解决方法在用vs打开evc项目后,编译的时候出现“Please use the /MD switch for _AFXDLL builds”这个错误,查了下资料,找到解决方法,方法如下: 修改如下设置:工程->属性->配置属性->c/c++->代码生成->运行时库->多线程调试DLL(/MDd)
2010-11-17 08:57:00 33430 4
转载 Wince中的文件操作
<br /><br />序言<br />Wince中的文件操作使用传统的基于句柄的方法;文件通过返回句柄的函数打开;读取和写入函数被传递句柄以便指出要操作的函数;数据在文件中读取和写入的偏移量由系统维护的文件指针来指出;最后当读取和写入完成时,应用程序通过关闭文件句柄来表示操作的结束。<br />正文<br />1.1 创建和打开文件<br /> HANDLE CreateFile( LPCTSTR lpFileName,<br />
2010-11-16 13:31:00 1653
转载 怎样使 WinXP 启动时不用输入用户名和密码即自动进入系统到桌面?
<br />在Windows XP中单击“开始→运行”,输入“rundll32 netplwiz.dll,UsersRunDll”(注意大小写及空格),然后进入“用户账户”操作窗口,取消对“要使用本机,用户必须输入用户名及密码”项的选择。在接下来弹出的对话框中输入你想让电脑每次自动登录的账户名及其密码。 <br /><br />对于Windows 2000,直接在“控制面板→用户帐户”中做上述修改即可。<br />参考网址: <br />http://database.cpst.net.cn/p
2010-11-14 21:05:00 7642
原创 开漏(open drain)和开集(open collector)的概念
在电路设计时我们常常遇到开漏(open drain)和开集(open collector)的概念。所谓开漏电路概念中提到的“漏”就是指MOSFET的漏极。同理,开集电路中的“集”就是指三极管的集电极。开漏电路就是指以MOSFET的漏极为输出的电路。一般的用法是会在漏极外部的电路添加上拉电阻。完整的开漏电路应该由开漏器件和开漏上拉电阻组成。如图1所示:组成开漏形式的电路有以下几个特点:1. 利用外部电路的驱动能力,减少IC内部的驱动。当IC内部MOSFET导通时,驱动电流是从外部的VCC流经R
2010-11-12 21:55:00 33266
原创 CStringList用法
<br />MFC提供集合类(Collect)专门负责数据对象的存储和管理,MFC的集合类分为三类,分别用于处理三类不同性质的数据结构:表(List,类似于数据结构的双链表),数组(Array)和映射(Map,具有类似字典的功能). <br />一,数组使用心得 <br />原型: template< class TYPE, class ARG_TYPE > class CArray : public Cobject <br />简单地说是你输入的时候用ARG_TYPE类,输出的时候用TYPE,自动实现转换
2010-11-11 14:58:00 9408 1
原创 内存泄漏,当您使用的 GetDC 方法和 ReleaseDC 方法 CWnd 类版本
重现行为的步骤<br />是从 CWnd 派生的类的一个方法中插入下面的代码在您的应用程序中: CDC *pDC; RECT rect; GetClientRect (&rect); for (int i = 0; i < 1000; i++) { pDC = GetDC (); ReleaseDC (pDC); }<br />如果运行此代码,并且之前和之后运行该代码然后检查系统内存您注意到系统内存泄漏
2010-11-08 14:32:00 1762
转载 USB通讯
<br />1、端点:位于USB设备或主机上的一个数据缓冲区,用来存放和发送USB的各种数据,每一个端点都有惟一的确定地址,有不同的传输特性(如输入端点、输出端点、配置端点、批量传输端点)<br />2、帧:时间概念,在USB中,一帧就是1MS,他是个单独的单元,包含了一系列总线动作,USB将1帧分为好几份,每一份中是个USB的传输动作。<br />3、上行、下行:设备到主机为上行,主机到设备为下行<br />下面以一问一答的形式开始学习吧。<br />问题一:USB的传输线结构是如何的呢?<br />答案
2010-11-08 14:21:00 1163 2
原创 GetSystemMetrics详解
<br />概述<br /> GetSystemMetrics () <br /> 用于得到被定义的系统数据或者系统配置信息.<br />语法<br />int WINAPI GetSystemMetrics( __in int nIndex); <br /> 下面是GetSystemMetrics函数参数nIndex的定义: <br /> SM_ARRANGE 标志用于说明系统如何安排最小化窗口..详细请参看下方备注.: <br /> 根据显示器显示的不同,系统数据可能有所不同. <br /> 该
2010-11-02 09:00:00 3638
原创 VC之美化界面
<br /> <br />美化界面需要先熟悉Windows下的绘图操作,并明白Windows的幕后绘图操作,才能有的放矢,知道哪些可以使用,知道哪些可以避免…… <br />2.1 Windows下的绘图操作<br />熟悉DOS的读者可能就知道:DOS下面的图形操作很方便,进入图形模式,整个屏幕就是你的了,你希望在哪画个点,那个地方就会出现一个点,红的、或者黄的,随你的便。你也可以花点时间画个按钮,画个你自己的菜单,等等…… <br />Windows本身就是图形界面,所以Windows下面的绘图操作功能
2010-11-01 21:58:00 765
原创 #define,const,typedef三者联系与区别 及 static和const的解释
一. #define与const联系:都可以用来定义常量区别:1. const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会产生意料不到的错误(边际效应)。2. 前者在堆栈分配了空间,而后者只是把具体数值直接传递到目标变量罢了。或者说,const的常量是一个Run-Time的概念,他在程序中确确实实的存在并可以被调用、传递。而#define常量则是一个Compile-Time概念,它的生命周期止于编译期:在实际程序中他只
2010-11-01 21:48:00 1470
原创 规范化编程:ANSI和UNICODE的使用
<br />底什么是ANSI,什么是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用8bit,而UNICODE中的字符采用16bit。8bit的ANSI编码只能表示256种字符,表示26个英文字母是绰绰有余的,但是表示汉字,韩国语,日语等有着成千上万个字符的非西方字符肯定就不够了,正是如此才引入了UNICODE标准。在软件开发中,特别是使用C语言的一些有关字符串处理的函数,ANSI和UNICODE是区分是用的,那么ANSI类型的字符和UNICODE类型的字符如何定义,如何使用呢?ANS
2010-11-01 21:47:00 459
原创 C_主函数main中变量(int argc,char argv[])的含义
<br />其实: int main(int argc,char *argv[]) 是 UNIX 和 Linux 中的标准写法,而 int main() 只是 UNIX 及 Linux 默许的用法..<br /><br />那究竟 argc,argv[] 有何之用呢?下面看个例子 edit.c 就会明白它们的用法了:<br /><br />#include<unistd.h><br />#include<stdio.h><br /><br />int main(int argc,char *argv[])<
2010-11-01 21:46:00 727
原创 #pragma pack
<br />为了能使CPU对变量进行高效快速的访问,变量的起始地址应该具有某些特性,即所谓的“对齐”。例如对于4字节的int类型变量,其起始地址应位于4字节边界上,即起始地址能够被4整除。变量的对齐规则如下(32位系统):<br />Type<br />Alignment<br />char<br />在字节边界上对齐<br />short (16-bit)<br />在双字节边界上对齐<br />int and long (32-bit)<br />在4字节边界上对齐<br />float<br />在4
2010-11-01 21:43:00 482
原创 CRect之DeflateRect及CPaintDC, CClientDC与CWindowDC区别
void DeflateRect(int x,int y); void DeflateRect(SIZE size); void DeflateRect(LPCRECT lpRect); void DeflateRect(int l,int t,int b); 参数: x 指定要向左或向右移动CRect边的数量 y 指定要向上或向下移动CRect边的数量 size 指定CRect移动数量的SIZE或CSize。 cx 指定移动左右边的数; cy 指定移动上下边的数;
2010-11-01 21:25:00 1379
原创 关于 GDI PS_INSIDEFRAME
<br />“PS_INSIDEFRAME 创建一支画笔,该画笔在Windows GDI输出函数所产生的封闭形状的框架内画线,此输出函数指定一个限定矩形(例如,Ellipse,Rectangle,RoundRect,Pie和Chord成员函数),当此风格用于没有指定限定矩形的Windows GDI输出函数(例如LineTo成员函数)时,此画笔的绘制区域不受框架的限制。”<br /> <br />关于 PS_INSIDEFRAME 这个话题,google了一下,发现问的人很多,回答得人都是用MSDN原话解释
2010-11-01 20:50:00 869
原创 双缓冲技术绘图及GDI简单截屏
当数据量很大时,绘图可能需要几秒钟甚至更长的时间,而且有时还会出现闪烁现象,为了解决这些问题,可采用双缓冲技术来绘图。 双缓冲即在内存中创建一个与屏幕绘图区域一致的对象,先将图形绘制到内存中的这个对象上,再一次性将这个对象上的图形拷贝到屏幕上,这样能大大加快绘图的速度。双缓冲实现过程如下: 1、在内存中创建与画布一致的缓冲区 2、在缓冲区画图 3、将缓冲区位图拷贝到当前画布上 4、释放内存缓冲区 在图形图象处理编程过程中,双缓冲是一种基本的技术。我们知道,如果窗体在响应WM_PAIN
2010-11-01 20:45:00 1060
转载 解决Windows 程序界面闪烁问题的一些经验
<br />一般的windows 复杂的界面需要使用多层窗口而且要用贴图来美化,所以不可避免在窗口移动或者改变大小的时候出现闪烁。<br />先来谈谈闪烁产生的原因<br />原因一:<br />如果熟悉显卡原理的话,调用GDI函数向屏幕输出的时候并不是立刻就显示在屏幕<br />上只是写到了显存里,而显卡每隔一段时间把显存的内容输出到屏幕上,这就是刷新周期。<br />一般显卡的刷新周期是 1/80秒左右,具体数字可以自己设置的。<br />这样问题就来了,一般画图都是先画背景色,然后再把内容画上去,如果
2010-11-01 20:44:00 402
原创 VC如何问题集锦(不断更新中...)
<br />1.在MFC中如何获得一个CBitmap的宽和高?<br />BITMAP bmp;<br />bmpIamge.GetBitmap(&bmp);<br />int nWidth = bmp.bmWidth;<br />int nHeight = bmp.bmHeight; <br />2.如何修改这个CBitmap的大小?<br />CBitmap是不能重复使用CreateCompatibleBitmap创建的,需要先释放原来的Bitmap Object 。<br /> <br />
2010-11-01 14:53:00 424
原创 wince 加载JPG问题 引
MFC提供的CWnd只有默认加载BMP文件的接口,对JPG等图像是不支持。加载.JPG格式的图片,有两种方法,用流对象+IPicture接口加载;IImage接口加载。
2010-11-01 09:18:00 635
Cadence 元件封装
2012-11-23
RNIDS PC端驱动RNDIS USB kit
2010-12-28
VDD.VEE.VSS什么意思.
2009-04-20
模电基础最基础的教程了
2009-04-20
Proteus 仿真库简介
2009-04-20
运算放大器的原理简介
2009-04-20
电容、电感滤波电路作用原理.
2009-04-20
0欧的电阻在电路中的用法
2009-04-20
场效应管的原理及分类
2009-04-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人