Cha*_*ang 13 delphi delphi-xe2 firemonkey
在Delphi XE2中,我们使用了
{$ifdef Win32}
{$ifdef Win64}
Run Code Online (Sandbox Code Playgroud)
确定我们所处的平台.
是否有任何预定义的条件可以识别VCL和FMX?
Rob*_*ove 12
虽然没有记录,但您可以在同一个应用程序中使用VCL和Firemonkey.
没有编译器定义.
如果您正在构建需要VCL和Firemonkey的东西,我会建议分离单位.
一种可能的方式:
混合来自同一单元中两个不同框架的UI代码并不是一个好主意.当不需要时,它将链接到另一个库中.
RRU*_*RUZ 10
正如其他人所说,没有条件指令来确定您的应用程序是VCL还是FireMonkey.我认为确定您的应用程序是FireMonkey还是VCL的最可靠方法是使用函数而不是条件指令.
就像是
Uses
Rtti;
function IsVCLApp:Boolean;
begin
Result:= CompareText(TRttiContext.Create.GetType(TApplication.ClassInfo).QualifiedName,'Vcl.Forms.TApplication')=0;
end;
function IsFireMonkeyApp:Boolean;
begin
Result:= CompareText(TRttiContext.Create.GetType(TApplication.ClassInfo).QualifiedName,'FMX.Forms.TApplication')=0;
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4705 次 |
| 最近记录: |