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

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

[复制链接]
跳转到指定楼层
楼主
查看: 18162|回复: 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状态
沙发
DNAS0310 发表于 2018-1-9 16:14:09 | 只看该作者
可以的 不错
板凳
无二 发表于 2018-1-10 01:12:03 | 只看该作者
厉害了楼主希望更新
地板
lcj21 发表于 2018-1-14 12:09:01 | 只看该作者
谢谢分享,支持一下!
5#
GoodSkin 发表于 2018-1-15 16:07:23 | 只看该作者
哇,。感谢楼楼的分享
6#
沉沦的学弱丶 发表于 2018-1-15 18:45:05 | 只看该作者
这个效果就很炫了。谢谢楼主!
7#
JILM 发表于 2018-2-25 16:30:34 | 只看该作者
谢谢楼主,感谢分享
9#
 楼主| qiaoke_song 发表于 2018-3-25 22:32:14 | 只看该作者
全部代码、说明、Demo全在这里了
https://pan.baidu.com/s/1htebnRu
自行下载,编辑修改
10#
boxxie 发表于 2018-3-28 09:51:41 | 只看该作者
多谢楼主分享哟
您需要登录后才可以回帖 登录 | 加入CSkin博客

本版积分规则

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

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2024-6-4 00:15, Processed in 0.643810 second(s), 38 queries , Gzip On.

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