VCL+FMX 双剑合壁编程
VCL 是经典,FMX 是新生,新生事物总会带来一些好玩新奇的东西。舍弃经典是浪费,不了解新生事物是等死,那么我们来一个二合一双剑合壁又如何呢?
要双剑合壁,就得投些机,取些巧。由于 Delphi / C++ Builder 不支持直接创建一个 VCL+FMX 的合体应用,所以我们要分别创建一个 VCL 和 FMX 的应用程序,其中一个我们做为主窗口。
好了, 我们先创建一个新的 VCL 工程,命名为 vclprj,然后在其上放置一个按钮.
接下来,我们再添加个空白的 FMX 工程,命名为 fmxprj,然后,我们在新打开的 FMX 窗体上随便放点啥,这里我放了一个 TLabel,然后旋转了45°,然后随便添加了一个TFloatAnimation。
好了,我们切回 vclprj,然后双击按钮,然后在 implementation 部分写入 uses FMX窗体所在单元,我的是 unit4.pas,所以就是 uses unit4;
接下来就象正常的编码一样,直接创建窗体并显示出来就好了。
var
FmxAppWnd:HWND=0;
procedure HideFMXAppWnd;
begin
if FmxAppWnd=0 then
FmxAppWnd:=Winapi.Windows.FindWindow('TFMAppClass',nil);
if (FmxAppWnd<>0) and (Winapi.Windows.IsWindowVisible(FmxAppWnd)) then
ShowWindow(FmxAppWnd,SW_HIDE);
end;
procedure TForm3.Button1Click(Sender: TObject);
var
F:TForm4;
begin
F:=TForm4.Create(nil);
HideFMXAppWnd;
F.ShowModal;
F.DisposeOf;
end;
好了,现在我们编译运行 vclprj,点击按钮看看:
怎么样,效果还是蛮炫的吧。
转载自QDAC官网网站,文章发现问题可能随时更新,最新版本请访问:
http://blog.qdac.cc/?p=2423
QDAC 开源数据库访问组件欢迎大家关注讨论和使用 官网(博客):
http://www.qdac.cc;讨论QQ群:250530692 贴吧:
http://tieba.baidu.com/f?kw=qdac2.0版地址:https://sourceforge.net/projects/qdac3.0版地址:
http://sourceforge.net/p/qdac3
参考:http://bbs.2ccc.com/topic.asp?topicid=480037
VCL+FMX 双剑合壁编程的更多相关文章
- Steema TeeChart Pro VCL FMX 2017.20 Full Suorce在Delphi XE10下的安装
一.首先将压缩包TeeChart Pro VCL FMX 2017.20 FS.rar解压到一个目录,比如 E:\Application\Steema TeeChart Pro VCL FMX 201 ...
- TeeChart For VCL/FMX V2017使用教程:第一章-准备开始
https://blog.csdn.net/vbfgm/article/details/79338775 第一章 准备开始-构建图表和填充数据序列 1.1 简介 通过代码或Dataset(数据集)访问 ...
- TeeChart Pro VCL/FMX教程之使用函数
函数类型 函数特点 TeeChart Pro功能是一个系列,几乎可以是任何系列类型,应用代数函数,数据源是另一个图表系列. 所有函数都派生自TTeeFunction组件并继承TeeFunction的P ...
- 前端开发:如何写一手漂亮的 Vue
前几日听到一句生猛与激励并存,可怕与尴尬同在,最无奈也无解的话:"90后,你的中年危机已经杀到".这令我很受触动.显然,这有些夸张了,但就目前这日复一日的庸碌下去,眨眼的功夫,那情 ...
- Archlinux 简明安装指南
archlinux是在distrowatch里位于top 10的发行版中,唯一采用roll release的distribution. pacman和yaourt双剑合壁,使得在archlinux安装 ...
- 初识iOS9 iPad新特性SlideView和SplitView的适配
苹果刚发布了iOS9,在iPad上新增了两个新的特性SlideView和SplitView,前者可以在不关闭当前激活APP的情况下调出来另外个APP以30%比例显示进行操作使用,后者允许同时运行两个A ...
- CVE-2017-7269—IIS 6.0 WebDAV远程代码执行漏洞分析
漏洞描述: 3月27日,在Windows 2003 R2上使用IIS 6.0 爆出了0Day漏洞(CVE-2017-7269),漏洞利用PoC开始流传,但糟糕的是这产品已经停止更新了.网上流传的poc ...
- Web开发者应掌握的12个Firebug技巧
来源: 廖煜嵘 相信很多从事Web开发工作的开发者都听说和使用过Firebug,但可能大部分人还不知道,其实它是一个在网页设计方面功能相当强大的编辑器,它 可以对HTML.DOM.CSS.HTTP和J ...
- [转]乐死我了,怎么样成为一个全栈程序员(Full Stack Developer),附我想专注的语言
受苏格拉底大神的启迪,我也来谈谈全栈.禅师:成为全栈工程师,这个问题等于如何成为全才,有可能吗码农:有可能,不过可能性比较低,因为达芬奇这类人毕竟是百年一遇的奇才.不过,因为我热爱这个行业,也有一定天 ...
随机推荐
- <Error>: CGContextRestoreGState
<Error>: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please ...
- IOS开发之NSPredicate谓词的用法
编程的人员不管是上过大学还是从培训机构出来的或做后台的.前端的都应该SQL语句有所了解,我们知道,在SQL语句当中 where 条件表达式可以对二维关系表的数据做条件筛选.微软的C# .net中也实现 ...
- IOS-7步学会用代理
代理:又叫委托 自己不能去办的事委托给别人去办 之前学过的 UIAlertView UITextField都是使用了代理 反向传值代理 代理Block 写代理的步骤 需要帮忙的人(请求帮代饭的人) 1 ...
- 关于Encoding.GetEncoding("utf-8")和Encoding.GetEncoding("GB2312")及Encoding.Default
关于Encoding.GetEncoding("utf-8")和Encoding.GetEncoding("GB2312")及Encoding.Default ...
- CLR has been unable to transition from COM context for 60 seconds
Original link: http://blog.wpfwonderland.com/2007/08/16/clr-has-been-unable-to-transition-from-com-c ...
- [cocos2d-x 2.0.4][iOS7]图片加载错误
本篇文章由:http://www.sollyu.com/cocos2d-x-2-0-4-ios7-image-loading-errors/ 说明 错误提示 <Error>: CGBitm ...
- Python3 正则表达式
字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在.比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦, ...
- Android开发系列之搭建开发环境
接触Android好久了,记得09年刚在中国大陆有点苗头的时候,我就知道了google有个Android,它是智能机操作系统.后来在Android出1.5版本之后,我第一时间下载了eclipse开发工 ...
- ajax、json一些整理(2)
<script type="text/javascript"> $(document).ready(function(){ $("#btn").cl ...
- winform水晶报表编译错误,未能加载文件或程序集"file:///C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framewor "
未能加载文件或程序集“file:///C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Commo ...