内容列表
- Drag & Drop 全解析 (一)
- 一、基本概念
拖放,是指用鼠标拖动的方法,在不同程序的窗口之间、同一个程序的不同窗口之间或同一程序同一窗口的不同控件之间,进行移动、复制和粘贴等操作的技术。拖放操作是在操作系统的帮助下完成的。被拖动的对象首先向操作系统注册它使用的数据格式,并按指定的数据格式提供数据,拖放操作结束时,接收拖放的窗口按指定的数据格式提取有关数据,并根据提取的数据生成相应的对象。
二、两种拖放方式
拖放有两种类型
- 分类:VC语言 查阅全文
- 一个智能指针的实现(代码)
- File: shared_ptr.h
///////////////////////////////////////////////////////////////////////////
//
// template class shared_ptr
//&
- 分类:VC语言 查阅全文
- Drag & Drop (二)
- 五、OLE拖放实现
MFC本身的CView类是支持拖放操作的,通过研究CView类的源码,大体知道它的实现原理是这样的:CView类中有一个COleDropTarget类的对象,在视图窗口初始化时,调用COleDropTarget类成员函数Register(),以此在系统中注册该视图窗口为拖放接收窗口。当进行拖放操作的鼠标指针处于视图窗口范围内时,COleDropTarge类会做出反应,它的On
- 分类:VC语言 查阅全文
- CORBA组件模型 (3)
-
续上。。
CORBA组件模型:第一部分,向组件式中间件(component middleware)演化
The CORBA Component Model, C/C++ Users Journal February 2004
Douglas C. Schmidt and Steve Vinoski
cnDeveloperw ([email protected]) 译
续上
- 分类:VC语言 查阅全文
- Drag & Drop (三)
- 至此,我们成功地为CListCtrlEx添加了文件拖入操作的支持。一个完整的拖放操作,还包括拖出动作,所以必须要为该类再添加拖出操作,即,将列表中的某一项或者多项拖出成为一个文件。这就需要用到另一个类:COleDataSource。具体步骤如下:
在CListCtrlEx中加入一个COleDataSource的实例,并映射列表框的LVN_BEGINDRAG消息处理函数,在此我们添加拖出操作的代码
- 分类:VC语言 查阅全文
- 一个智能指针的实现
- 一个智能指针的实现
用C++写程序的人都知道内存泄漏这个问题(除非他从来不动态分内存),对STL有了解的人都知道有auto_ptr这么个智能指针,可因为它只能有一个拥有权,所以不能支持标准容器,一直不太喜欢这点。能开发出一个共享访问的智能指针就好多了(这有点像Windows内核对象)。所以,需要有个对象来管
- 分类:VC语言 查阅全文
- 如何实时获取系统每个进程占用的CPU?--讨论及请教
- 本文的目的是为了和大家讨论一个问题,同时给出一个根据进程ID,来返回该进程实时占用的CPU使用率的函数。希望大家在用这个函数的时候别忘记我的问题。
目前计算进程CPU占用率的方法主要有两种,一种是根据时间来计算,另一种根据注册表计算,我使用的是前者。前者方法原理
- 分类:VC语言 查阅全文
- 在VC++通过汇编实现获取代码运行时间
- 在VC++通过汇编实现获取代码运行时间
如何获得程序或者一
- 分类:VC语言 查阅全文
- INF Manufacturer Section
-
INF Manufacturer Section
Manufacturer章节用于识别这样一些厂商,该厂商的一个或者多个设备能够使用该inf文件进行安装。
该章节的语法结构为:
[Manufacturer]
manufacturer-identifier
[manufacturer-identifier]
[manufacturer-identifi
- 分类:VC语言 查阅全文
- 高质量C++编程点滴(一)
- 高质量C++编程点滴(一)
有效解决内存泄露
一、你需要一个函数将一个数组赋值为等差数列,并将会在函数的外部使用它。
不合理:
int *GetArray( int n )
{
int *p = new int[n];
- 分类:VC语言 查阅全文
- 高质量C++编程点滴(二)
- 高质量C++编程点滴(二)
使用合理的内存访问方式
一、你需要开辟一段内存来存放和管理一个4 x 4的矩阵,并单位化之。
不合理:
int aMatrix[4][4];
for ( int i = 0; i < 4; i++ )
{
for ( int j = 0; j &
- 分类:VC语言 查阅全文
- XML的QL查询语言及其实现
- (3)用嵌套查询进行结果分组
上述XML-QL查询不会将结果分组,同一本书的作者会出现在不同的<result>中,如果将同一本书的作者放在一个<result>中就好了。要将结果进行分组,可以使用嵌套查询。将以上的例子稍许改动,可以得到我们想要的结果:
WHERE <book>
&nbs
- 分类:VC语言 查阅全文
- 在VC中使用Automation操纵Word和Excel
- 在
- 分类:VC语言 查阅全文
- 在mfc中使用线程局部数据tls
- 对于局部变量,不同的线程每一次调用函数时都会在栈上得到该变量的一份新的拷贝,全局的和静态的变量则只有一份实体,MFC提供了一种机制,使得可以像定义全局变量一样定义线程局部数据,所谓线程局部数据是指对于每一个访问它们的线程都会有一份只属于该线程的拷贝。 可使用宏THREAD_LOCAL(class_name, ident_name)定义线程局部数据,THREAD_LOCAL定义如下: #define
- 分类:VC语言 查阅全文
- 使程序运行一个实例
- 代码源自Jeffry Richter的著作《Windows核心编程》 在InitInstance()函数中写入以下代码: //只运行一个实例 HANDLE hApp = CreateMutex(NULL,FALSE,"OnlyOneInstanceExample"); if(GetLastError() == ERROR_ALREADY_EXISTS) {
- 分类:VC语言 查阅全文
- 定制个性的对话框窗口类
- 相信很多人在VC下开发程序的时候大多都会采用基于对话框的开发的吧, 我也不例外,大多数的小型测试程序没有必要开发基于文档, 视图的结构来测试, 只要使用一些基本的对话框的程序就可以达到这个目的. 但是在开发基于对话框的程序时,要使用到一些 Spy++ 的功能检测的时候, 就会出现一些问题. 什么问题? 我使用 Spy++ 去检测一个对话框的窗口类的, 并想得到一个对话框的窗口类, 以便我在使用钩子
- 分类:VC语言 查阅全文
- 设置ODBC的自定义类CSetODBC
- 一,功能描述用于配置数据源用户名及密码.1,可以得到连接串,此串可用于CMyRecordset(派生于CRecordset)的GetDefaultConnect(),也可以用干CDataBase类OpenEx.2,如果用户配置正确,只需要配置一次,相关信息记录在文件.3,可以指定存储信息的文件名.因为有可能几个程序共用一个数据源.4,用户可以重新配置数据5,可以得到当前数据的类型.6,可以得到应该
- 分类:VC语言 查阅全文
- 微软平台嵌入式开发技术评析
- 微软嵌入式操作系统有下面几种:1.WinCE2.WinCE.NET3.Windows XP Embedded WinCE不支持.NET平台的开发,WINCE.NET 与 WinXP Embedded都支持.NET平台的开发。 WinXP Embedded只支持X86架构的硬件平台,WinCE.NET支持所有的硬件平台。 WinCE.NET与WinXP Embedded都内置了精简了的.Net Fr
- 分类:VC语言 查阅全文
- 使用自定义的类CSetODBC(二)
- 1,利用SQL词句理论上可以使用任何数据库,以sql为例.body.clientHeight)this.width=body.clientHeight" src="http://www.338888.com/VCShare/images/upfile/200461521239.jpg" onmousewheel="return yuzi_img(event,this)"> 2,使用方法void C
- 分类:VC语言 查阅全文
- 如何在MDI客户区窗口响应鼠标双击消息?
- CSDN - 专家门诊 - VC/MFC 界面问题 回复 | 推荐 | 收藏 | 专题 | 公告 | 管理 | 保存 | 关闭窗口 主 题: 如何在MDI客户区窗口响应鼠标双击消息? 作 者: huyoo (空格键) 等 级: &nbs
- 分类:VC语言 查阅全文