Delphi自带皮肤的使用


本文整理自网络,侵删。

 
delphi xe2之后自带了皮肤,已经满足基本的界面美化需求,以下是调用方法:

引用Vcl.Themes单元
 
私有变量 vThemes: string;
 
窗口创建事件
 
var
s: string;
  list: THashedStringList;
 
vThemes := vIni.ReadString('Configure', 'Skins', 'Luna');
  list := THashedStringList.Create;
  try
    list.Sorted := true;
    list.AddStrings(TStyleManager.StyleNames);
    for s in list do
      if (s <> 'Luna') and (s <> 'Windows') then
      begin
        vItem := TMenuItem.Create(nil);
        vItem.Caption := s;
        vItem.OnClick := V1Click;
        N12.Add(vItem);
      end;
  finally
    list.Free;
  end;
  for i := 0 to N12.Count - 1 do
    N12.Items[i].Checked := N12.Items[i].Caption = vThemes;
  TStyleManager.SetStyle(vThemes);
 
换肤菜单:
procedure TfrmMain.V1Click(Sender: TObject);
var
  i: integer;
begin
  vThemes := TMenuItem(Sender).Caption;
  for i := 0 to N12.Count - 1 do
    N12.Items[i].Checked := N12.Items[i].Caption = vThemes;
  TStyleManager.SetStyle(vThemes);
  vIni.WriteString('Configure', 'Skins', vThemes);
end;
 
加载文件方法
var
  dir, fileName, styleName: string;
 
  // 样式文件 *.vsf
  dir := GetEnvironmentVariable('Delphi') + '\Redist\styles\vcl';
 
  for fileName in TDirectory.GetFiles(dir, '*.vsf') do
    TStyleManager.LoadFromFile(fileName);
 
  for styleName in TStyleManager.StyleNames do
    ListBox1.Items.Add(styleName);

相关阅读 >>

进程防杀Delphi版(dll部分)

Delphi 设置webbrowser 代理服务器 与 useragent

Delphi禁止tedit, tmemo右键上下文弹出菜单

Delphi 如何从一张图片中裁剪一部分距形图片另存为文件(使用canvas.copyrect)

Delphi ios 保持设备开机状态

Delphi excel表格数据导入数据库

Delphi 颜色转换成 html 颜色代码

键盘钩子,鼠标钩子,Delphi环境下编写的键盘鼠标钩子的程序示例

Delphi andorid应用程序检查wifi有效还是无效

Delphi firemonkey的tedit七大变化

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    暂无评论...