Creating Skins with SkinSys Ver 1.0

简介:

Introduction

SkinsSys is a picture-based skin system written in Visual C++/MFC and based on FriendSoft's SkinForm.

Contents

This article (and its downloads) includes the following:
  • CSkinsys codes
  • Simple Skin Editor
  • A beatiful MPEG 1,2,3 decoder (Copyright www.eldos.org - based on the MAPlay Decoder)
  • MPEGPlayer project

Download Directories

Once you download and extract the files, you'll see several new folders. Here is what each is used for.
  • Decoder: MPEG Decoder codes
  • Editor : Skineditor Files
  • Sample : Sample Skin Files
  • SkinSys: CSkinsys Codes
  • Root : MPEGPlayer Project

Requirements

This system only requires the "OleLoadPicture" function (Please see LoadPictureFile function in Skindialog.cpp)

How to Use

Please Read This notes and see Sample Directory and MPEGPlayer project
  1. Draw mask bitmap
  2. Draw main Bitmap
  3. If you need or want
    • Draw mouse over bitmap
    • Draw mouse down bitmap
    • Draw disable bitmap
  4. Run Skineditor
  5. Select "Screens" Tab
  6. Fill All Pictures
  7. If you want select "Preview" Button
  8. Save and exit
  9. Run Visual Studio
  10. Create a Dialog based new Project (for example Dialog Name = CBaseDialog)
  11. Include "SkinDialog.h" (for example in "StdAfx.h")
  12. Change to CBaseDialog : public CDialog to CBaseDialog : public CSkinDialog
  13. Go to CBaseDialog::OnInitDialog
  14. Add these lines
    char m_skin[512];
    sprintf(m_skin, "<Your Skin Name>");
    
    
    SetMenuID(IDR_MAINMENU);
    
    
    SetWindowText("MPEG Player");
    
    
    SetSkinFile(m_skin);
    CSkinDialog::OnInitDialog();
    
  15. Compile and Run

Controlling Button Clicks, Trackbar, ProgressBar and Text

Here are the protocols for the different events that you might want to handle in the base class (CSkinDialog)...
void ProgresChanged(CString m_Name); void MouseMoved(CString m_ButtonName, int x, int y); void TrackChange(CString m_ButtonName, UINT nSBCode, UINT nPos); void ButtonPressed(CString m_ButtonName); 
You can also add any of these functions to your class depending on your needs.
  • Changing the tooltip Use one of the Set<xxx>ToolTip functions. Where <xxx> is Button, Text, etc. For example:
    SetButtonToolTip("BUTTON_USEEQ", "Equalizer is On");
    
  • Getting Value Use one of the Get<xxx> functions. For example:
    BOOL useEQ = GetButtonCheck("BUTTON_USEEQ"); 
  • Setting Value Use one of the Set<xxx> functions. For example:
    SetButtonCheck("BUTTON_USEEQ", useEQ); 
目录
相关文章
|
数据挖掘 Linux
服务器数据恢复—误操作导致xfs文件系统丢失,无法访问的数据恢复案例
一台服务器+MD1200磁盘柜通过RAID卡创建了一组RAID5阵列并分配一个LUN。在Linux系统层面将该LUN划分了sdc1和sdc2两个分区。通过LVM扩容的方式将sdc1分区加入到了卷组中的一个逻辑卷中,sdc2分区格式化为XFS文件系统使用。Linux操作系统采用的xfs文件系统。
服务器数据恢复—误操作导致xfs文件系统丢失,无法访问的数据恢复案例
|
存储 人工智能 云栖大会
云栖大会无影云个人版,免费领取你的AI云电脑!
在这个数字时代,科技正以前所未有的速度改变着我们的生活方式。从远程办公到在线教育,再到娱乐休闲,科技为人们提供了前所未有的便利与可能性。在即将到来的云栖大会上推出了一款革命性的产品——无影云个人版,旨在通过先进的云计算技术,为每一位追求高效、便捷生活方式的用户提供全新的AI云电脑体验。 办公新纪元:提升效率与灵活性 无影云个人版凭借其强大的计算能力和云端存储功能,为远程工作和移动办公带来了革命性变化。无论是撰写报告、处理数据,还是进行视频会议,用户只需通过任何设备接入互联网即可享受无缝的云办公体验。无需担心硬件升级问题,一切资源随需而变,让您的工作效率提升至新的高度。 游戏世界的探险:沉浸
云栖大会无影云个人版,免费领取你的AI云电脑!
|
Linux
分区管理工具-parted命令实战案例
关于Linux分区管理工具parted命令的使用案例,包括创建和删除分区、清空分区表等操作的详细步骤和注意事项。
193 0
分区管理工具-parted命令实战案例
|
Shell
esp32入门笔记
这篇文章是关于ESP32 S3入门的笔记,包括了安装编译工具、下载ESP-IDF框架、设置工具和环境变量、以及烧录固件的步骤说明。
329 5
|
Ubuntu Unix Linux
|
安全 Python
【Python】@property用法简述
【Python】@property用法简述
288 0
|
运维 Linux Shell
运维:Linux服务器崩了怎么办,快来看看这份”急救命令指南“吧!
当服务器出现问题,如崩溃、内存耗尽或CPU使用率过高时,运维工程师需要保持冷静,并通过一系列Shell命令来诊断和解决。首先,检查是否有异常SSH登录活动,查看`/etc/passwd`和`.bash_history`文件,以及用户最近的登录信息。接着,监控网络连接和端口,使用`netstat`和`lsof`命令找出资源占用高的进程,并查看进程启动时间和详细信息。同时,排查可能的恶意文件,检查定时任务和服务配置以确保没有异常启动项。最后,分析系统日志,如`/var/log`目录下的各种日志文件,找出潜在问题。通过这些步骤,可以有效定位和解决服务器故障。
|
传感器 数据采集 数据可视化
基于车辆装载率的车辆作业状态识别
本文介绍了一种基于装卸车事件识别的方案,主要任务是基于车辆内部体积检测传感器上传的时序数据,经过数据处理模块、状态提取模块、事件识别模块、决策模块等模块,对装卸车事件进行识别,并提供详细的事件信息。
547 0
|
运维 关系型数据库 分布式数据库
【云故事探索】NO.3:智慧出行,云思妙想,看享道出行如何打造智能交通新业态
享道出行运维总监曹亚娟分享了公司如何利用云计算实现创新和发展。作为上汽集团的移动出行品牌,享道出行在阿里云的帮助下,仅用5天完成核心业务搬栈,成为首个使用阿里云PolarDB的大型出行平台。通过深度合作,双方在移动支付等多领域融合,构建全场景智慧出行体验。企业认识到释放云潜力需超越传统IT模式,通过预测算法和Serverless架构优化,提升效率并降低成本。未来,享道出行与阿里云将持续合作,引领移动出行行业的智能化发展。
|
开发框架 JavaScript 安全
WIndows Server 2016 部署 Web服务(简单篇)
WIndows Server 2016 部署 Web服务(简单篇)
528 2