当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: VCL的辉煌(二)一Tgraphiccontrol的叛变 在上面这个例子中,请再注意一下:mediaplayer元件是继承于Twincontrol的,也就是说,能够被其他窗口“容纳”的元件必须是具有窗口句柄属性特征的元件,也即具有“parent”属性。
 

 

 ·authorware ucd 开发大揭秘(五)     »显示摘要«
    摘要:有趣的是:marcomedia公司为了保护它自己的版权,在authorware4.0时代,一再要求使用它开发的多媒体程序要加上“made with marcomedia”的标示,可能没多大效果,进入5.0时代后,它强制性的在每个程序结束后显示一个e文的marcomedia标示的logo画面,使我们的多媒体程序或课件程序显得不那么专业化,简直大煞风景,如果我们能够先使用某种资......
 ·authorware ucd 开发大揭秘(二)     »显示摘要«
    摘要:入 门 篇- authorware插件的格式。 用过authorware的朋友可能会注意到在authorware系统目录下有十几个扩展名为.u32或.ucd的文件,没错,这就是authorware的插件。其实这些文件的格式是非常标准的window动态链接库文件,也就是*.dll这样的文件。authorware通过在动态链接库文件中访问指定的函数,如果该函数需要参数,则authorware传递给该文......


Authorware UCD 开发大揭秘(七)
vcl的辉煌(二) 

【程序编程相关:Delphi中正常窗口的实现

【推荐阅读:巧用DBGrid控件的Sort属性实现“

一 tgraphiccontrol的叛变  【扩展信息:学习MySQL多表操作和备份处理

 

    在上面这个例子中,请再注意一下:mediaplayer元件是继承于twincontrol的,也就是说,能够被其他窗口“容纳”的元件必须是具有窗口句柄属性特征的元件,也即具有“parent”属性.

    那么不是从twincontrol继承下来的元件就无法用于authorware了吗?不过还好,borland公司 已经为我们留好了后门. 

    熟悉vcl元件体系结构的人知道:twincontrol还有一个“兄弟”:tgraphiccontrol与一个“儿子”tcustomcontrol.tgraphiccontrol与twincontrol的不同之处在于:tgraphiccontrol不具有窗口句柄,而具有canvas(画布) 属性与paint过程.tcustomcontrol的好处是:它同时具有twincontrol与tgraphiccontrol的所有属性,爹是 twincontrol,妈是tgraphiccontrol,它本身是一个“混血儿”.有意思吧,vcl本身并不支持多重继承,tcustomcontrol 元件可以说是一个特例,其实大多数元件就是从tcustomcontrol继承下来的(真搞不懂为什么borland公司要 设置一个twincontrol,它完全是多余的). 好了,现在大家明白“后门”是什么了吧.我们现在的目标就是把从tgraphiccontrol继承下来的元件改由 它的“儿子”tcustomcontrol继承,子承母业,理所当然,而且customcontrol具有tgraphiccontrol的一切属性 ,这种转换绝对是安全的.我们现在定一个具体的目标:timage元件,这个东西是从tgraphiccontrol继承下来 ,应该说算是常用的元件了,拿它试刀正好.borland公司把timage的源码与其他一部分元件的源码都放在extctrl.pas文件里,处于dephi的安装目录中的…\source\vcl目录中.也可以在dephi编辑器中找到该元件的声明 再按住ctrl不放,也可以通过链接到源码. 

    现在找到“timage=class(tgraphiccontrol)”这一行,将“tgraphiccontrol”改为“tcustomcontrol”,并.保存.是不是很简单.改过之后,timage元件就具有了窗口句柄属性了,接下来我们就可以将它安放在authorware的窗口上了. 

    新建dll工程,并一定要在uses语句中加入:graphics,extctrls;这两个单元; 


...   下一页
    摘要:delphi 光盘中有一个有一个演示程序名字是 coolstuf。我在这个程序中发现一个有趣的现象。一旦你将第三行工具栏“链接栏”拖动到最顶端,然后再拖回原来的位置,那么工具栏最下方会多出一个大概 40px 的空白区域。这个问题很恶心,我暂时称它作“工具栏错位”。在 google 中搜索,发现也有其他人讨论过此问题。原因大致是:当工具栏高度发生变化后......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE