Delphi Rad Studio XE2中FireMonkey(FMX)的功能详情是什么?

11
我听说Delphi的 NEW Rad Studio XE2有一个叫做 FireMonkey的东西,可以让同样的代码构建Windows 32、Windows 64和 MacOS应用程序。

如果这是真的,那就是一件很了不起的事情。我在哪里可以找到有关FireMonkey的技术文档?

编辑:

我对MacOS很感兴趣。一些人问我何时发布我的软件的Mac版本,我一直告诉他们我没有。我在三月份(4个月前)提出了这个问题,当时没有人谈论过FireMonkey。什么版本的Delphi可以让我创建在Mac上运行的软件?

主持人问题:

这应该是个维基吗?


2
在商标注册中,FireMonkey被描述为“用于提供跨平台图形引擎和组件库的计算机软件,用于生成图形用户界面和皮肤引擎,并提供控件表示、样式、图形和效果、动画、2D和3D效果”。 - mjn
8
还有其他人认为“FireMonkey”是一个非常糟糕的名称吗? - David Heffernan
2
@David:同意。听起来像是一个网页浏览器插件。 - Andreas Rejbrand
4
也许这应该被标记为社区维基? - Wouter van Nifterick
2
火猴1956和2016火元素赋予了猴子额外的决心,耐力,力量和耐久性。这些人总是想在关系中占据上风。选择伴侣时,这些猴子也可能会变幻莫测,但一旦他们做出选择,他们的伴侣将很快爱上他们。他们将继续攀登事业 ladder 直到成功,并且通常受同事和朋友的喜爱。希望它能名副其实! - HMcG
显示剩余11条评论
9个回答

11

FireMonkey起源于以前的DXScene库,该库已被Embarcadero收购。

您可以在此博客网站http://ksdev.blogspot.com/上找到大量信息和截图。

Eugene在他的论坛中写道,所有注册用户(像我一样)都将“免费”获得Embarcadero版本...

以下是DXScene的功能-可与FreePascal编译器一起使用,以在Linux或Mac OS X下运行:

DXScene是Delphi/C++ Builder/Lazarus的3D硬件加速图形库。
  • 在Windows、Mac OS X和Linux上支持硬件加速图形
  • 集成于IDE中的2D和3D图形编辑器
  • 强大的3D层,包含立方体、球体、圆锥体、平面、网格、自由摄像机和灯光等物品
  • 网格对象具有WPF网格数据格式,DXScene具有高级导入工具,支持GLSM、WRL、TIN、STL、SMD、Q3BSP、BSP、PLY、OCT、OBJ、OBJF、NURBS、NMF、MS3D、MDC、MD2、LWO、GTS、GLM、GLX、GLA、B3D、MD5MESH、MD5ANIM、MD3、3DS、PRJ等文件格式
  • 类似于Adobe Flash或Microsoft WPF的强大2D矢量引擎,包括高质量的形状和控件,如窗口、标签、按钮、复选框、文本框等
  • 先进的GUI引擎——窗口、按钮、文本框、数字框、备忘录、角度框、列表框等等
  • 基于矢量图形样式的高级换肤引擎。酷炫的样式有黑色、现代、Vista。
  • DXScene可用于创建具有酷炫动画的硬件加速2D应用程序,如CoverFlow、层等
  • 易于使用的基于时间的动画和过渡效果
  • 分层窗口、Jpeg、Png、Tiff和Gif格式的读写支持,快速缩略图创建
  • 游戏和实时模拟的实时模式
  • DXScene可用作SCADA、GIS、CAD和KIOSK应用程序的开发工具
  • DB-Aware控件——TvxDBNavigator、TvxDBLabel、TvxDBTextBox等等多语言引擎、编辑器和示例
  • 使用Newton Game Dynamics进行物理模拟
  • 跨平台解决方案,可在Microsoft Windows、Apple Mac OS X和Linux上使用
我们可以猜测FireMonkey将拥有一些这些功能,具体取决于新的Delphi XE2跨平台编译功能。它能构建OSX、iOS、Linux应用程序吗?是否需要XCode?
简而言之,FireMonkey将允许您:
- 构建32位和64位Windows或32位Mac OS X本机应用程序,并从在Windows运行的Delphi IDE中进行调试,但您需要一台Mac电脑来远程运行OSX应用程序; - 构建iOS本机应用程序,使用基于XCode的调试 - 实际上,OSX中的iOS模拟器以x86 / x64模式运行,并使用FreePascalCompiler创建ARM应用程序; - 应用程序可以是2D(带控件)或3D(在Windows下使用DirectX或在Mac下使用OpenGL); - 使用新的Live Bindings功能构建与数据库相关的应用程序。
但是,FireMonkey不兼容VCL的GUI部分。它是一个全新的库,具有自己的架构,实际上是基于前DXScene开发的。
所有详细信息都可在http://www.deltics.co.nz/blog/?p=735找到。
我认为Mac OS X支持仅限于32位版本,因为FireMonkey使用Carbon API,该API仅支持32位。请参见http://developer.apple.com/carbon 值得一提的是,制作Mac OS X 64位版本将需要使用“Objective C”语法(或链接)和直接的Cocoa。需要进行一些额外的工作...
我仍在等待Linux版本。 FireMonkey的祖先(又名DXScene)已经准备好了Linux(使用GTK / Pango / Cairo / OpenGL),他们已经有一个ELF链接器(来自Kylix,非常好)。 我理解Mac OS X在列表中具有更高的优先级,因为它是桌面计算的更常见平台。 但对于服务器应用程序,Linux则必不可少。 在XE3中,也许会有?
编辑:之前的“悲观”版本已被提取;)
编辑:我制作了一些DXScene组件演示的截图 - 这可能有助于您更好地了解FireMonkey将会是什么样子。

2
确实。看起来XE2将支持OSX与FireMonkey。 - Rudy Velthuis
2
你错了,请看其他答案中的博客文章。OSX将会得到支持。 - Robert Love
有些人可能知道更多,但由于保密协议而不说任何话。 - Warren P
@Robert 在博客文章中写道:“构建64位Delphi应用程序以利用最新的硬件+创建单个应用程序并针对Windows和OS X”。这里的“target”是什么意思?它不同于“Build”...您可以针对OS X,当编译器能够为OS X构建时。但是,此博客文章倾向于否认它:“Delphi XE2具有一些不错的功能(x64、OSX、FireMonkey)和iOS”...这是概念验证还是要在XE2中发布的功能?EMB从未提到过Delphi编译器的ARM版本... - Arnaud Bouchez
我想问一下,FireMonkey会生成非本地应用程序吗?因此,在Windows上它看起来不像Windows应用程序,在Mac上也不像Mac应用程序等等。这并不是批评,我明白为什么要实现这一点很难。 - David Heffernan
显示剩余8条评论

3

目前还无法获取任何技术文档,因为XE2已经宣布但尚未发布。


这类问题很快就会过时,让我有点想关闭这个问题。 - Warren P

3

Rad Studio XE2发布会报告

博客摘要:

• FireMonkey - 基于可缩放矢量图形的GUI框架,利用GPU能力进行硬件加速跨平台GUI。

• 跨平台支持 - 使用单一源VCL应用程序针对Win32和Win64或使用FireMonkey针对Win32、Win64等多个平台。

• iOS支持原生代码FireMonkey应用程序!!- 是的,使用Delphi构建iPhone和iPad应用程序,甚至连Steve Jobs都会乐意将其放入他的商店中!

• LiveBindings - 一种创建“实时”关系的方法,不仅可以在对象之间创建关系,还可以在对象的各个属性之间创建关系。

• 使用PhoneGap在RadPHP中创建本机Android应用程序

• 未来版本的Delphi将支持本机Android应用程序(以及Linux)

• DataSnap客户端代理生成 - 适用于Android、.NET、Objective-C、Blackberry、iOS等等

• Starter版将从一开始就提供,同时还有Pro、Enterprise和Architect版。

• 所有跨平台功能支持的平台都将在所有版本中提供,包括Starter版!

编辑

Firemonkey演示视频


2

1

至少在David Intersimone的博客上,它说Firemonkey库将完全做到这一点:Win32、Win64、Mac OSX和iOS。 以下是博客文章的相关摘录:

  • 创建GPU支持的FireMonkey应用程序,让您的客户保持参与
  • 构建64位Delphi应用程序,以利用最新的硬件
  • 创建一个单一的应用程序,同时针对Windows、OS X和iOS

但我同意David Heffernan的观点,现在没有技术信息,只有销售话语。


不知道为什么我的大脑总是读成Hefferman(带有“m”)......可能喝太多咖啡了...;-) - Fabricio Araujo
我已经记不清我的名字被拼错的不同方式了,但-man是最常见的! - David Heffernan
@Fabricio Arauj,我也遇到了这个问题。 - VibeeshanRC

1

目前还没有公开透露太多细节,但看起来FireMonkey是新的跨平台GUI库的名称,类似于VCL但不限于Windows。很多人猜测它基于Embarcadero一段时间前购买的KSDev技术,但我不知道是否已经得到确认。任何进一步的细节可能要等到我们得到官方消息。

编辑:看起来Andreano Lanusse刚刚发布了有关该库的大量官方预览信息。请参见http://www.delphifeeds.com/go/s/82632获取详细信息。


1
KSDev曾经开发过一个GPU加速的控件库(有些人甚至称其为“本地WPF”)。现在Emba展示了一个跨平台的GPU加速GUI库?这太巧合了....;-) - Fabricio Araujo

1

请注意 - Delphi XE2/FireMonkey 产品发布会昨天在奥克兰举行,因此信息现在已经公开。

FireMonkey 不仅支持本地 Win32、Win64 和 OSX,还支持本地 IOS!这是非常重要的。


0

如果你想制作一个OS X版本的应用程序,你也可以看看FreePascal。


我不知道为什么Lazarus osx的下载量很低。 - VibeeshanRC

0

我们不允许谈论它(保密协议)...但测试表明,FireMonkey应用程序可以在我的OS X机器上运行 :-P


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接