zoukankan      html  css  js  c++  java
  • 转:看看 Delphi XE2 为 VCL 提供的 14 种样式

    http://www.linuxso.com/linuxbiancheng/8889.html

    其实只提供了 13 个 vsf 样式文件, 还有默认的 Windows 样式, 共 14 种.
    
    在空白窗体上添加 ListBox1 等控件, 测试代码:
    
    uses IOUtils, Vcl.Styles, vcl.Themes;
    
    procedure TForm1.FormCreate(Sender: TObject);
    var
      dir, fileName, styleName: string;
    begin
      //VCL 的样式文件 *.vsf 在 X:Program FilesEmbarcaderoRAD Studio9.0Rediststylesvcl
      dir := GetEnvironmentVariable('Delphi') + 'Rediststylesvcl';
    
      {载入所有 *.vsf 文件}
      for fileName in TDirectory.GetFiles(dir, '*.vsf') do
        TStyleManager.LoadFromFile(fileName);
    
      {将样式名称导入列表}  
      for styleName in TStyleManager.StyleNames do
        ListBox1.Items.Add(styleName);
    end;
    
    {修改样式}
    procedure TForm1.ListBox1Click(Sender: TObject);
    begin
      TStyleManager.SetStyle(ListBox1.Items[ListBox1.ItemIndex]);
    end;

    本人测试过程中发现问题:

    1、至少要引用后两个 单元文件 uses IOUtils, Vcl.Styles, vcl.Themes;
    否则如果只引用 vcl.Themes,编译可以通过,运行时异常“Unable to load style ***”。
    2、并且公司控件:显示样式时,
    TGQToolPanel更改不了样式,TGQToolButton显示不出来图片;
    3、TfrmSystemSetting 设置窗体继承于TDrawForm时,使用样式后// unit uDrawForm;
    无法关闭,无法拖动,只能用 Atl+F4解决关闭。

  • 相关阅读:
    gdb typeid 详解
    make报错
    期末作业验收
    个人作业——软件工程实践总结作业
    原型设计(结对第一次)
    团队展示(团队)
    第二次作业——个人项目实战(sudoku)
    软件工程实践第一次作业--准备
    C++第一次课堂作业 circle
    第四次作业 计算器第二部分(未完)
  • 原文地址:https://www.cnblogs.com/rogge7/p/5974154.html
Copyright © 2011-2022 走看看