Delphi Firemonkey - 在运行时加载样式

标签 delphi styles runtime firemonkey

我已将 ......\RAD Studio\9.0\Styles 中的几个示例样式作为资源加载到我的项目中,并且“简单地”尝试在运行时加载其中一个。

我正在使用以下代码来尝试执行此操作:

var
  vResourceStream : TResourceStream;
begin

  vResourceStream := TResourceStream.Create( HInstance, 'DARKSTYLE', RT_RCDATA );

  try
    StyleBook1.LoadFromStream( vResourceStream );
  finally
    vResourceStream.Free;
  end;

它编译正常,但是当我运行它时,我收到一堆错误,第一个是“属性对齐不存在”,然后是“读取 TStyleBook.Align 时出错:属性对齐不存在”,并且似乎这样做是为了更多属性,高度等。

有人可以告诉我如何解决这个问题吗?

最佳答案

并不是说我对 FMX 了解一点,但 AFAIU .style 文件是资源定义文件。您应该读取其资源,而不是从流中读取样式书对象:

StyleBook1.Resource.LoadFromStream( vResourceStream );

关于Delphi Firemonkey - 在运行时加载样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18970245/

相关文章:

delphi - 新的自定义组件导致 IDE 崩溃

delphi - Delphi XE/XE2 64位中的POPCNT

css - 使用 SCSS 和 CSS

delphi - 如何知道什么是 var 类型?

delphi - 如何更改某些 Pane 的 Delphi XE2 默认行为?

delphi - 将fmx表单添加到Delphi包中

html - 如何让名字和姓氏标签在相应的输入表单下对齐?

wpf - 跨多个控件同步 WPF ColorAnimation

python - 在运行时更改 Python for 循环范围(上限)

iphone - 在 Objective-C 中从 CGPoint 获取 Ivar 值