作者: qiaoke_song
查看: 18553|回复: 24
打印 上一主题 下一主题

[源码] 【开关按钮重绘】C#开关按钮效果

[复制链接]
跳转到指定楼层
楼主
查看: 18553|回复: 24
本帖最后由 qiaoke_song 于 2018-3-25 22:36 编辑

说明:
开关按钮效果,不要在调试模式下运行,会有些慢,直接点击exe运行就可以
如需新增图像,修改SwitchResource.resx资源文件
添加修改效果,修改Ui3Dflipswitch.cs

另:将InitializeSwitchEffect(this, new Point(100, 50), 1, 0, 2, switch1_Click);换成
InitializeSwitchEffect(this, new Point(100, 50), 1, 0, 2, null);
找两幅大小一样的图像,加到SwitchResource.resx资源文件,或修改代码,指定2副图像
可以当做2副图像3D立体切换的效果

效果截图:


调用代码演示:
[C#] 纯文本查看 复制代码
public partial class Form1 : Form
    {
        Ui3Dflipswitch us = new Ui3Dflipswitch();
        Ui3Dflipswitch us1 = new Ui3Dflipswitch();
        Ui3Dflipswitch us2 = new Ui3Dflipswitch();

        public Form1()
        {
            InitializeComponent();

            /*
             * InitializeSwitchEffect(在哪个控件之内, 位置, 初始开关状态, 动画类型(目前只设定0), 动画速度, 执行的事件);
             */
            us.InitializeSwitchEffect(this, new Point(100, 50), 1, 0, 2, switch1_Click);
            us1.InitializeSwitchEffect(this, new Point(100, 150), 0, 1, 2, switch2_Click);
            us2.InitializeSwitchEffect(this, new Point(100, 250), 0, 2, 2, switch3_Click);

            if (us.switch_flag == 0) label1.Text = "打开...";
            else label1.Text = "关闭...";

            if (us1.switch_flag == 0) label2.Text = "打开...";
            else label2.Text = "关闭...";

            if (us2.switch_flag == 0) label3.Text = "打开...";
            else label3.Text = "关闭...";
        }

        private void switch1_Click(object sender, EventArgs e)
        {
            if (us.switch_flag == 0) label1.Text = "打开...";
            else label1.Text = "关闭...";
        }

        private void switch2_Click(object sender, EventArgs e)
        {
            if (us1.switch_flag == 0) label2.Text = "打开...";
            else label2.Text = "关闭...";
        }

        private void switch3_Click(object sender, EventArgs e)
        {
            if (us2.switch_flag == 0) label3.Text = "打开...";
            else label3.Text = "关闭...";
        }

    }

全部代码、说明、Demo全在这里了
https://pan.baidu.com/s/1htebnRu
自行下载,编辑修改

评分

参与人数 3金钱 +3 收起 理由
不同的世界 + 1 感谢分享,LZ辛苦了~
钱鹏鹏 + 1 感谢分享,LZ辛苦了~
quzhigang + 1 感谢分享,LZ辛苦了~

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏10 转播转播
回复 论坛版权

使用道具 举报

推荐
ccjgmwz 发表于 2018-3-21 08:44:42 | 只看该作者
本帖最后由 ccjgmwz 于 2018-3-21 08:53 编辑

你好,首先感谢你的分享,我在使用的时候遇到了问题,我下载的demo是引用的dll,请问怎么控制按钮的状态,比如在点击ON按钮的时候如果满足条件,就不变成OFF而是继续保持ON状态
25#
biglu 发表于 2020-2-2 21:28:53 | 只看该作者
感谢楼主的分享~
24#
移通小白白 发表于 2019-10-14 22:22:22 | 只看该作者
        感谢分享,LZ辛苦了~
23#
移通小白白 发表于 2019-10-12 08:10:14 | 只看该作者
感谢你的分享                     
22#
大瑞R 发表于 2019-10-10 16:19:24 | 只看该作者
谢谢分享,支持一下!
21#
顾倾。 发表于 2019-9-27 14:48:35 | 只看该作者
good.mark!
回复

使用道具 举报

20#
SimonZRG 发表于 2019-9-27 09:52:23 | 只看该作者
感谢楼楼的分享
19#
无醉 发表于 2019-6-15 16:26:36 | 只看该作者
感谢分享 下载学习了
18#
jacksonwong 发表于 2019-5-18 12:46:39 | 只看该作者
多谢楼主分享!
17#
snskip 发表于 2018-9-15 08:14:42 | 只看该作者
这种资源必须支持,而且是免费的
您需要登录后才可以回帖 登录 | 加入CSkin博客

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|CSkin ( 粤ICP备13070794号

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2024-9-24 11:21, Processed in 0.649601 second(s), 34 queries , Gzip On.

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