<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<!--last modified on Tue, Apr 15, 1997 11:35 AM-->
<HTML>
<HEAD>
<!-- This document was created from RTF source by rtftohtml version 3.0.1 -->
<META NAME="GENERATOR" Content="Symantec Visual Page 1.0">
<META NAME="Author" Content="Steph Mineart">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1">
<TITLE>Chapter 11</TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF">
<H1>Chapter 11<BR>
Advanced ActiveX Control Development with BaseCtl</H1>
<UL>
<LI><A HREF="#Heading1">Advanced ActiveX Control Development with BaseCtl</A>
<UL>
<LI><A HREF="#Heading2">Creating Properties</A>
<UL>
<LI><A HREF="#Heading3">Creating Asynchronous Properties</A>
<LI><A HREF="#Heading4">Listing 11.1 BCFCONTROLCTL.H--Modified BCFControlControl
Class Definition</A>
<LI><A HREF="#Heading5">Listing 11.2 BCFCONTROLCTL.CPP--BCFControlControl Constructor
Implementation Change</A>
<LI><A HREF="#Heading6">Listing 11.3 BCFCONTROLCTL.CPP--OnData Function</A>
<LI><A HREF="#Heading7">Listing 11.4 DISPIDS.H--Add Data Path Property Dispid</A>
<LI><A HREF="#Heading8">Listing 11.5 BCFCONTROL.ODL--BCFControl ODL Implementation</A>
<LI><A HREF="#Heading9">Listing 11.6 BCFCONTROLCTL.H--ReadyState Property Prototype</A>
<LI><A HREF="#Heading10">Listing 11.7 BCFCONTROLCTL.CPP--Member Initialization</A>
<LI><A HREF="#Heading11">Listing 11.8 BCFCONTROLCTL.CPP--Property Implementation</A>
<LI><A HREF="#Heading12">Listing 11.9 BCFCONTROLCTL.CPP--OnData Implementation</A>
<LI><A HREF="#Heading13">Static and Dynamic Property Enumeration</A>
<LI><A HREF="#Heading14">Listing 11.10 PERPROPERTYBROWSING.H--IPerPropertyBrowsing
Interface Macro</A>
<LI><A HREF="#Heading15">Listing 11.11 BCFCONTROLCTL.H--IPerPropertyBrowsing Interface
Declaration</A>
<LI><A HREF="#Heading16">Listing 11.12 BCFCONTROLCTL.CPP--QueryInterface Implementation
of IPerPropertyBrowsing</A>
<LI><A HREF="#Heading17">Listing 11.13 BCFCONTROLCTL.CPP--IPerPropertyBrowsing Implementation</A>
</UL>
<LI><A HREF="#Heading18">Drawing the Control</A>
<UL>
<LI><A HREF="#Heading19">Optimized Drawing</A>
<LI><A HREF="#Heading20">Listing 11.14 BCFCONTROLCTL.CPP--Optimized Drawing</A>
<LI><A HREF="#Heading21">Listing 11.15 BCFCONTROLCTL.CPP--BeforeDestroyWindow Implementation</A>
</UL>
<LI><A HREF="#Heading22">Adding Clipboard and Drag and Drop Support</A>
<UL>
<LI><A HREF="#Heading23">Clipboard Support</A>
<LI><A HREF="#Heading24">Listing 11.16 IDATAOBJECT.H--IDataObject Interface Macro</A>
<LI><A HREF="#Heading25">Listing 11.17 IENUMFORMATETC--IEnumFORMATETC Interface Macro</A>
<LI><A HREF="#Heading26">Listing 11.18 BCFCONTROLCTL.H--Clipboard Support Implementation--Header
File</A>
<LI><A HREF="#Heading27">Listing 11.19 BCFCONTROLCTL.CPP--Constructor Member Initialization</A>
<LI><A HREF="#Heading28">Listing 11.20 BCFCONTROLCTL.CPP--QueryInterface Update</A>
<LI><A HREF="#Heading29">Listing 11.21 BCFCONTROLCTL.CPP--WM_KEYDOWN Message Handler</A>
<LI><A HREF="#Heading30">Listing 11.22 BCFCONTROLCTL.CPP--CopyDataToClipboard Implementation</A>
<LI><A HREF="#Heading31">Listing 11.23 BCFCONTROLCTL.CPP--PrepareDataForTransfer
Implementation</A>
<LI><A HREF="#Heading32">Listing 11.24 BCFCONTROLCTL.CPP--CopyStgMedium Implementation</A>
<LI><A HREF="#Heading33">Listing 11.25 BCFCONTROLCTL.CPP--IDataObject Implementation</A>
<LI><A HREF="#Heading34">Listing 11.26 BCFCONTROLCTL.CPP--IEnumFORMATETC Implementation</A>
<LI><A HREF="#Heading35">Listing 11.27 BCFCONTROLCTL.CPP--OnKeyDown Implementation</A>
<LI><A HREF="#Heading36">Listing 11.28 BCFCONTROCTL.H--Clipboard Target Implementation--
Header File</A>
<LI><A HREF="#Heading37">Listing 11.29 BCFCONTROLCTL.CPP--GetDataFromClipboard Implementation</A>
<LI><A HREF="#Heading38">Listing 11.30 BCFCONTROLCTL.CPP--GetDataFromTransfer Implementation</A>
<LI><A HREF="#Heading39">Listing 11.31 BCFCONTROCTL.CPP--OnKeyDown Implementation</A>
<LI><A HREF="#Heading40">Adding Drag and Drop Support</A>
<LI><A HREF="#Heading41">Listing 11.32 IDROPSOURCE.H--IDropSource Interface</A>
<LI><A HREF="#Heading42">Listing 11.33 BCFCONTROCTL.H--IDropSource Interface Implementation</A>
<LI><A HREF="#Heading43">Listing 11.34 BCFCONTROLCTL.CPP--QueryInterface Update</A>
<LI><A HREF="#Heading44">Listing 11.35 BCFCONTROLCTL.CPP--WindowProc Implementation</A>
<LI><A HREF="#Heading45">Listing 11.36 BCFCONTROLCTL.CPP--Drop Source Implementation</A>
<LI><A HREF="#Heading46">Listing 11.37 IDROPTARGET.H--IDropTarget Interface</A>
<LI><A HREF="#Heading47">Listing 11.38 BCFCONTROLCTL.H--IDropTarget Implementation</A>
<LI><A HREF="#Heading48">Listing 11.39 BCFCONTROLCTL.CPP--QueryInterface Update</A>
<LI><A HREF="#Heading49">Listing 11.40 BCFCONTROLCTL.CPP--AfterCreateWindow Implementation</A>
<LI><A HREF="#Heading50">Listing 11.41 BCFCONTROLCTL.CPP--IDropTarget Implementation</A>
<LI><A HREF="#Heading51">Custom Clipboard and Drag and Drop Formats</A>
<LI><A HREF="#Heading52">Listing 11.42 BCFCONTROLCTL.H--Custom Data Format Member
Variables</A>
<LI><A HREF="#Heading53">Listing 11.43 BCFCONTROLCTL.CPP--Register the Custom Format</A>
<LI><A HREF="#Heading54">Listing 11.44 BCFCONTROCTL.CPP--PrepareDataForTransfer Update</A>
<LI><A HREF="#Heading55">Listing 11.45 BCFCONTROLCTL.CPP--GetDataFromTransfer Update</A>
<LI><A HREF="#Heading56">Listing 11.46 BCFCONTROLCTL.CPP--IEnumFORMATETC::Next Update</A>
<LI><A HREF="#Heading57">Listing 11.47 BCFCONTROLCTL.CPP--IEnumFORMATETC::GetData
Update</A>
</UL>
<LI><A HREF="#Heading58">Subclassing Existing Windows Controls</A>
<UL>
<LI><A HREF="#Heading59">Listing 11.48 BCFCONTROLSUBCTL.CPP--RegisterClassData Implementation</A>
</UL>
<LI><A HREF="#Heading60">Dual-Interface Controls</A>
<LI><A HREF="#Heading61">Other ActiveX Features</A>
<UL>
<LI><A HREF="#Heading62">Windowless Activation</A>
<LI><A HREF="#Heading63">Listing 11.49 BCFCONTROLCTL.H--BCFControControl ActiveX
Implementation</A>
<LI><A HREF="#Heading64">Listing 11.50 BCFCONTROLNOWIN.H--BCFControlNoWinControl
ActiveX Implementation</A>
<LI><A HREF="#Heading65">Unclipped Device Context</A>
<LI><A HREF="#Heading66">Flicker-Free Activation</A>
<LI><A HREF="#Heading67">Mouse Pointer Notifications When Inactive</A>
<LI><A HREF="#Heading68">Listing 11.51 BCFCONTROLNOWIN.H--Mouse Notifications</A>
<LI><A HREF="#Heading69">Optimized Drawing Code</A>
<LI><A HREF="#Heading70">Loads Properties Asynchronously</A>
</UL>
<LI><A HREF="#Heading71">From Here...</A>
</UL>
</UL>
<P>
<HR SIZE="4">
<H1><A NAME="Heading1"></A>Advanced ActiveX Control Development with BaseCtl</H1>
<UL>
<LI><B>Asynchronous properties</B>
<SPACER TYPE="VERTICAL" SIZE="2">
Supporting asynchronous properties in the BaseCtl sample shows what is happening
behind the scenes when properties are loaded asynchronously.
<P>
<LI><B>Property enumeration</B>
<SPACER TYPE="VERTICAL" SIZE="2">
Property enumeration is exposed through a simple COM interface, which is easy to
add given the BaseCtl architecture.
<P>
<LI><B>Optimized drawing</B>
<SPACER TYPE="VERTICAL" SIZE="2">
Optimized drawing has positive effects on the performance of the control. Like MFC
and ATL, BaseCtl support of optimized drawing is trivial.
<P>
<LI><B>Clipboard and Drag and Drop</B>
<SPACER TYPE="VERTICAL" SIZE="2">
Adding Clipboard and Drag and Drop support to your BaseCtl implementation is similar
to the MFC and ATL implementations.
<P>
<LI><B>Windows and dual-interface controls</B>
<SPACER TYPE="VERTICAL" SIZE="2">
Subclassing an existing Windows control reduces development time when creating new
control implementations. Like ATL,
没有合适的资源?快使用搜索试试~ 我知道了~
用VC开发Activex
共178个文件
jpg:102个
htm:57个
gif:17个
需积分: 3 3 下载量 42 浏览量
2008-08-06
00:40:24
上传
评论
收藏 2.77MB RAR 举报
温馨提示
对用VC开发Activex的人有很大帮助
资源详情
资源评论
资源推荐
收起资源包目录
用VC开发Activex (178个子文件)
MENU_BG.GIF 38KB
AD_BG.GIF 27KB
NAV_BG.GIF 10KB
AD_BOOK.GIF 6KB
AXPVCS.GIF 6KB
10307C.GIF 5KB
TOCX.GIF 2KB
PREVX.GIF 2KB
DIGBKX.GIF 2KB
PREV.GIF 2KB
DIGBK.GIF 2KB
TOC.GIF 2KB
NEXTX.GIF 2KB
QUE_SQ.GIF 2KB
NEXT.GIF 2KB
QUE_SM.GIF 1KB
BAR.GIF 883B
CH11.HTM 120KB
CH03.HTM 119KB
CH10.HTM 111KB
CH09.HTM 106KB
CH16.HTM 102KB
CH08.HTM 90KB
CH07.HTM 86KB
CH04.HTM 80KB
CH06.HTM 78KB
CH12.HTM 75KB
CH15.HTM 58KB
CH05.HTM 58KB
CH14.HTM 46KB
CH13.HTM 43KB
CH02.HTM 40KB
CH01.HTM 16KB
INTRO.HTM 12KB
TOC.HTM 3KB
NAV01.HTM 2KB
NAVTOC.HTM 1KB
NAVINT.HTM 1KB
NAV16.HTM 1KB
NAV15.HTM 1KB
NAV03.HTM 1KB
NAV13.HTM 1KB
NAV12.HTM 1KB
NAV14.HTM 1KB
NAV11.HTM 1KB
NAV10.HTM 1KB
NAV09.HTM 1KB
NAV05.HTM 1KB
NAV02.HTM 1KB
NAV08.HTM 1KB
NAV07.HTM 1KB
NAV06.HTM 1KB
NAV04.HTM 1KB
MENU.HTM 1KB
INDEX.HTM 997B
AD.HTM 343B
INDEXTOC.HTM 312B
INDEX01.HTM 312B
INDEX02.HTM 310B
INDEXINT.HTM 309B
INDEX13.HTM 305B
INDEX12.HTM 305B
INDEX10.HTM 305B
INDEX16.HTM 305B
INDEX14.HTM 305B
INDEX11.HTM 305B
INDEX15.HTM 305B
INDEX03.HTM 304B
INDEX04.HTM 304B
INDEX05.HTM 304B
INDEX09.HTM 304B
INDEX06.HTM 304B
INDEX07.HTM 304B
INDEX08.HTM 304B
15FIG04.JPG 89KB
F_FIG12.JPG 84KB
15FIG02.JPG 69KB
15FIG09.JPG 51KB
DFIG09.JPG 50KB
DFIG07.JPG 50KB
W_FIG03.JPG 49KB
W_FIG02.JPG 49KB
W_FIG04.JPG 49KB
IFIG07.JPG 46KB
IFIG04.JPG 46KB
HFIG02.JPG 46KB
15FIG07.JPG 46KB
JFIG01.JPG 45KB
F_FIG07.JPG 44KB
DFIG01.JPG 43KB
CFIG1R.JPG 43KB
15FIG13.JPG 42KB
JFIG02.JPG 42KB
GFIGS01.JPG 42KB
CFIG7R.JPG 42KB
DFIG02.JPG 42KB
GFIGS02.JPG 42KB
F_FIG01.JPG 42KB
IFIG13.JPG 41KB
15FIG06.JPG 41KB
共 178 条
- 1
- 2
thj1201
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0