【开发】MFC到Delphi的皮肤移植
中午在林同学那里看到他在MFC上应用了Skin++皮肤,这是一款通用的软件换肤套件,支持各种系统,无聊啊,皮肤神马的以前也搞过,不过以前没玩过MFC的,以前是玩的SDK套件中的DirectUI(炫彩界面库),刚好硬件看得想睡的时候,就把这套皮肤拿来玩了一下,效果还不错,有图有真相,下面是一套机器人皮肤。

虽然会MFC,不过很少用MFC来做软件,我一般是用SDK和delphi做开发,于是我想,如果这套皮肤也能用于delphi,该多好啊。
然后看了下Skin++的这个版本,它是以DLL形式调用的,所以delphi一定能用,比起MFC来说,delphi的开发周期就短多了,另外在delphi中调用标准DLL可以静态调用也可以动态调用,一般来说,以模块的形式来静态调用DLL是比较方便的,而Skin++所用到的所有图片资源和皮肤配置都全部包装在*.ssk文件中了,于是调用起来就如鱼得水了。
通过模块的调用,最后就是在delphi的程序总入口进行皮肤初始化工作了,这中间还发生一件纠结的事,以前用delphi写的一个后门程序,被我无意点到了,纠结啊,试了好一会才记起来密码(中间有尝试次数及间隔时间限制),无语了,最后用以前写的一个delphi版记事本来测试了下这套机器人皮肤,有图有真相,效果还不错吧!




这套皮肤还支持.Net和易语言呢,易语言我会,但是不会.Net,不过易语言本身就有很多优美的皮肤了,而且还有动态皮肤,所以就不折腾了,况且易语言的静态编译总是出现这样或那样的问题,不知道.Net是个什么情况(微软的东西真伤不起),这个会.Net的人可以去折腾下,毕竟大家都比较重视视觉效果。
下面再附上一张易语言的皮肤,比上面的华丽吧,苹果系统的呢,而且主界面带动态水波纹效果的哦,如图。

哎,又得去纠结嵌入式了。。。。。。。
【开发】MFC到Delphi的皮肤移植的更多相关文章
- 我的Win32开发抉择,Delphi老将复出
这两天在开发公司的一个教学软件客户端,因为要考虑到给PHP.平面设计等班的同学使用,为了避免安装.Net Framework.JRE的麻烦(如果把.Net Framework.JRE打包到安装包,也会 ...
- VC2005从开发MFC ActiveX ocx控件到发布到.net网站的全部过程
开篇语:最近在弄ocx控件发布到asp.net网站上使用,就是用户在使用过程中,自动下载安装ocx控件.(此文章也是总结了网上好多人写的文章,我只是汇总一下,加上部分自己的东西,在这里感谢所有在网 ...
- VS2010开发MFC ActiveX,摄像头拍照上传Webservice(1)
最近工作项目,BS中需要用到摄像头拍照,需要存储本地,同时上传到服务器,尝试使用vc++做ActiveX来实现. 完全没有使用过vc,上网搜索各种知识,初步完成.在这里记录下有帮助的资料. 第一步:编 ...
- 开发 MFC 应用的一般过程
1.创建用户接口一般使用 Visual C++内置的资源编辑器创建用户接口,用户接口主要包括菜单.加速键.对话框.位图.图标.光标.工具栏以及其他资源等.通常,应用向导创建的资源文件包含了工程所需要的 ...
- cmake编译dcmtk,并利用vs2010 进行开发mfc 程序
这几天要处理 医学图像数据,经同学推荐 采用 dcmtk 关于 编译 dcmtk 是可参考如下blog 1. http://blog.csdn.net/okaimee/article/details/ ...
- VS2010开发MFC ActiveX,摄像头拍照上传Webservice(2)
继续记录,第二步开发摄像头拍照功能. 使用vfw.h开发摄像头拍照功能,关于vfw网上有很多文章,很多代码可以参考 参考:http://blog.163.com/huangqiao_8/blog/st ...
- win10 开发mfc 64位 ocx控件
问题1.模块“XXX.ocx”加载失败 解决办法:项目--〉属性--〉常规-〉配置类型-〉 动态库(.dll) 修改为 静态库(.lib) 问题2.1>x64\Release\stdafx.o ...
- NX二次开发-MFC对话框获取UG界面句柄,设置MFC对话框在UG界面固定显示位置
extern "C" DllExport void ufusr(char *param, int *retcod, int param_len) { if (UF_initiali ...
- [教学] Delphi Berlin 10.1 开发 Windows 10 平板 App 远程调试
Delphi Berlin 10.1 开发 Windows 10 平板 App 远程调试安装步骤: 准备电脑: 一台开发电脑,安装 Delphi 开发环境 一台平板电脑,安装 PAServer,安装方 ...
随机推荐
- CentOS 7 使用 Yum 软件源安装谷歌 Chrome 浏览器
Google Chrome是一款由 Google 公司开发的网页浏览器,新版的 Chrome 浏览器使用的是 Blink 内核,具有运行速度快,稳定的特性.Chrome 能够运行在 Windows,L ...
- 关于jsp发起请求加载datagrid数据(草稿)
$(document).ready(function (){ var refNo = '${refNo}'; $('#caAbnDetail').datagrid('load',{ refNo:ref ...
- JavaScript Math Object 数字
JavaScript Math Object Math Object The Math object allows you to perform mathematical tasks. Math is ...
- Eclipse Java注释模板设置简介,更改字体大小
为类添加注释:此为我的模板设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后展开Comments ...
- libpcap详解【转】
libpcap详解 2010-12-01 22:07 libpcap(Packet Capture Library),即数据包捕获函数库,是Unix/Linux平台下的网络数据包捕获函数库.它是一个独 ...
- Redis学习之路(002)- Ubuntu下redis开放端口
Redis在ubuntu安装后默认是只有本地访问,需要别的ip访问我们需要修改redis的配置文件 1. dpkg -L redis-server 这命令我们可以看到redis的安装的文件在那些目录 ...
- STS 设置代码注释模板
打开Window->Preferences->Java->Code Style->Code Templates <?xml version="1.0" ...
- int和Integer之间的区别和联系
在工作中使用==埋下的坑这篇博文中,我们看到当使用基本类型的时候==是完全没有问题的,部分或者混合使用基本类型和装箱基本类型的时候,就可能出现问题了,那么我们可能会想基本类型和装箱基本类型 ...
- spring cloud 之 Feign 使用HTTP请求远程服务
一.Feign 简介 在spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLCo ...
- 替代crontab,任务计划统一集中管理系统cronsun简介
一.背景 crontab 是 Linux 系统里面最简单易用的定时任务管理工具,相信绝大多数开发和运维都用到过.在咱们公司,很多业务系统的定时任务都是通过 crontab 来定义的,时间长了后会发现存 ...