欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

程序员文章站 2023-04-04 14:54:50
场景 效果 点击剪切按钮 点击粘贴按钮 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 新建一个form窗体,设计布局如下 主要是有两个PictureBox控件以及四个按钮 ......

场景

效果

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

 

 

点击剪切按钮

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

 

 

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

点击粘贴按钮

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

 

 

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

注:

博客主页:

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

新建一个form窗体,设计布局如下

Winform中实现将照片剪贴到系统剪切板中(附代码下载)

 

 

主要是有两个picturebox控件以及四个按钮,下面是一个imagelist控件,然后给其添加三张照片。

在窗体的load事件中实现加载窗体时默认显示imagelist的第一张照片

private void form1_load(object sender, eventargs e)
        {
            //加载窗体时默认显示imagelist中的第一章图片
            picturebox1.image = imagelist1.images[0];
            //加载时“上一张”按钮处于不可用状态
            previoussheet.enabled = false;
        }

 

因为imagelist中有三张照片所以设置下一张按钮的点击事件

private void nextsheet_click(object sender, eventargs e)
        {
            //激活“上一张”按钮
            previoussheet.enabled = true;
            //判断是否越界
            if (i <imagelist1.images.count)
            {
                i++;
                //判断是否浏览到最后一张
                if (i==imagelist1.images.count-1)
                {
                    nextsheet.enabled = false;
                }
                //当不越界时
                if (i < 3)
                {
                    picturebox1.image = imagelist1.images[i];
                }
            }
        }

 

同理设置上一张按钮的点击事件

private void previoussheet_click(object sender, eventargs e)
        {
            nextsheet.enabled = true;
            if (i < imagelist1.images.count)
            {
                i--;
                if (i == 0)
                {
                    previoussheet.enabled = false;
                }
                if (i >=0)
                {
                    picturebox1.image = imagelist1.images[i];
                }
            }
        }

 

设置剪切按钮的点击事件

 

private void cut_click(object sender, eventargs e)
        {
            //将数据置于系统剪贴板中,并指定在退出程序后是否是否将数据保留在剪贴板中
            clipboard.setdataobject(imagelist1.images [i],false );
            messagebox.show("剪切成功!","提示信息",messageboxbuttons.ok,messageboxicon.asterisk );
        }

 

主要是调用clipboard的setdataobject方法。此方法将数据置于系统剪切板中,第二个参数指定在退出程序后是否将数据保留在剪贴板中。

然后编写粘贴按钮的点击事件

private void copy_click(object sender, eventargs e)
        {
            picturebox2.image = clipboard.getimage();
            messagebox.show("剪切成功!", "提示信息", messageboxbuttons.ok, messageboxicon.asterisk);
        }

 

主要是通过clipboard的getimage()方法获取剪切板中的照片并给右边的picturebox设置数据源。

代码下载

https://download.csdn.net/download/badao_liumang_qizhi/12028591