开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 670|回复: 15
收起左侧

[易语言纯源码] 分组框美化、自绘美化模块、窗口自绘

[复制链接]
结帖率:100% (1/1)
发表于 6 天前 | 显示全部楼层 |阅读模式   北京市北京市
分享源码
界面截图: -
是否带模块: 纯源码
备注说明: -
前言:
    上次我们讲到:分组框美化、控件自绘、控件透明、美化皮肤模块的制作_精易论坛     肯定有人会有疑问,但没人反馈我就自问自答几个吧。



自问自答:
    1.为什么“分组框_自绘”的类里有两个“创建”?
      创建:是在父窗口上直接自绘的方式
      创建自句柄:是在已有的控件(分组框)上自绘的方式
      目的就是为了让模块既能随意创建控件,也能美化已有控件,即常说的“皮肤”

    2.这段的意思是什么:风格 = 位或 (7, 67108864, 1073741824, 268435456, 风格)
      7 - BS_GROUPBOX:分组框,67108864 - WS_CLIPSIBLINGS, 使窗口排除子窗口之间的相对区域
      1073741824 - WS_CHILDWINDOW:子窗口,268435456 - WS_VISIBLE:可见状态
      自然都是“风格”或叫“样式”,1073741824, 268435456这两个是基本风格,创建控件少不了这两个。
      其它则根据创建的控件不同而改变。具体可以查看微软的MSN或者用助手的词库cha询。

    3.“子类化”是什么鬼?
      百du一下就知道它的含义了,哈哈!子类化的主要作用就是拦截窗口消息,这样才能自绘嘛。
      类里用这个是为了方便,不用操心API的输入,它集成到GDIPlus类2.3.2里了,调用就行。

应该描述仔细了吧,下面就是这次的效果图。

自绘美化模块0.1.png



    上次模块里创建了一个“分组框_自绘”的类,这次再创建一个窗口类(暂时只有基本功能)。
    这个“窗口_自绘”的类是透明的关键,为什么呢?我描述一下透明原理:


    1.用“背景图形”复制一份我们自绘的窗口背景,放在内存中。
    2.其它控件再从这里复制 相应位置 的一小块背景图(操作“全_背景场景”这个全局变量)
    3.然后自绘控件时,把复制过来的一小块背景图作为控件的背景
    4.最后在这一小块背景图自绘控件,从而实现伪透明。


    也就是说所有自绘控件的背景都要从“全_背景场景”这个全局变量里去取,所以这个窗口类很重要。


问题:
     1.由于增加了内容,叫分组框美化不合适了,所以改名了叫“自绘美化模块”
     2.不透明还好,透明后一些瑕疵就出来了。比如标签有背景色,分组框的细节不完美等。
     所以欲知后事如何,请看下次分解!



相关帖子集合:
    第一帖:区域截图GDIPlus版、GDIPlus2.3.2修改版、图片框透明_精易论坛
    第二贴:分组框美化、控件自绘、控件透明、美化皮肤模块的制作_精易论坛

源码:
    下面这个模块下载过就不用重复下载了(除非自绘美化模块运行出错)。
    GDIPlus2.3.2源码: GDIPlus类2.3.2(修改版0.2).e (603.42 KB, 下载次数: 5)

评分

参与人数 8好评 +4 精币 +13 收起 理由
光影魔术 + 2 新技能已get√
卌卌卌 + 1 感觉像丑化
人气猫 + 1 + 1 支持开源~!感谢分享
quary + 1 + 2 开源精神必须支持~
kyo9766 + 1 感谢分享,很给力!~
多多帅吧 + 1 共同努力,共同进步
圆圈 + 1 YYDS~!
一C + 1 + 5 感谢分享,很给力!~

查看全部评分


结帖率:100% (1/1)

签到天数: 8 天

发表于 前天 21:24 | 显示全部楼层   广西壮族自治区柳州市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:78% (7/9)

签到天数: 2 天

发表于 4 天前 | 显示全部楼层   河北省石家庄市

支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:29% (6/21)

签到天数: 8 天

发表于 4 天前 | 显示全部楼层   湖南省邵阳市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:33% (1/3)
发表于 4 天前 | 显示全部楼层   江苏省淮安市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:73% (8/11)

签到天数: 12 天

发表于 5 天前 | 显示全部楼层   河南省焦作市

感谢分享
感谢分享
回复 支持 反对

使用道具 举报

签到天数: 13 天

发表于 5 天前 | 显示全部楼层   浙江省金华市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 6 天

发表于 5 天前 | 显示全部楼层   山西省忻州市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:80% (57/71)

签到天数: 13 天

发表于 5 天前 | 显示全部楼层   广东省珠海市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 6 天

发表于 5 天前 | 显示全部楼层   山东省青岛市
看着挺好看的,感谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表