1、缩放

 private void ImageShow_Load(object sender, EventArgs e){pictureBox1.Load(@"E:\SQ1.jpg");pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;pictureBox1.Dock = DockStyle.None;}private void pictureBox1_MouseEnter(object sender, EventArgs e){pictureBox1.Focus();pictureBox1.Cursor = Cursors.SizeAll;}/// <summary>/// 放大,缩小图片/// </summary>/// <param name="sender"></param>/// <param name="e"></param>void pictureBox1_MouseWheel(object sender, MouseEventArgs e){int i = e.Delta * SystemInformation.MouseWheelScrollLines / 5;pictureBox1.Width = pictureBox1.Width + i;//增加picturebox的宽度pictureBox1.Height = pictureBox1.Height + i;pictureBox1.Left = pictureBox1.Left - i / 2;//使picturebox的中心位于窗体的中心pictureBox1.Top = pictureBox1.Top - i / 2;//进而缩放时图片也位于窗体的中心}      

2、平移

private void pictureBox1_MouseDown(object sender, MouseEventArgs e){if (e.Button == MouseButtons.Left){mouseDownPoint.X = Cursor.Position.X;  //注:全局变量mouseDownPoint前面已定义为Point类型  mouseDownPoint.Y = Cursor.Position.Y;isSelected = true;}  }private void pictureBox1_MouseMove(object sender, MouseEventArgs e){if (isSelected && IsMouseInPanel())//确定已经激发MouseDown事件,和鼠标在picturebox的范围内
            {this.pictureBox1.Left = this.pictureBox1.Left + (Cursor.Position.X - mouseDownPoint.X);this.pictureBox1.Top = this.pictureBox1.Top + (Cursor.Position.Y - mouseDownPoint.Y);mouseDownPoint.X = Cursor.Position.X;mouseDownPoint.Y = Cursor.Position.Y;}  }private bool IsMouseInPanel(){if (this.pan_picture.Left < PointToClient(Cursor.Position).X && PointToClient(Cursor.Position).X < this.pan_picture.Left + this.pan_picture.Width && this.pan_picture.Top < PointToClient(Cursor.Position).Y && PointToClient(Cursor.Position).Y < this.pan_picture.Top + this.pan_picture.Height){return true;}else{return false;}}private void pictureBox1_MouseUp(object sender, MouseEventArgs e){isSelected = false;}

转载于:https://www.cnblogs.com/jinqier/p/3497201.html

C#,一种简单的方式实现滚动鼠标缩放图片,平移相关推荐

  1. 简单NLP分析套路(1)----语料库积累之3种简单爬虫方式应对大部分网站

    目录 近期听课的思考 语料库的记录 3种爬虫 urllib.request + BeautifulSoup scrapy 与xpath 使用selenium 模拟浏览器行为 新的改变 相关链接 未完待 ...

  2. jquery 点击图片放大,带上下一张,可通过滚动鼠标进行图片缩放

    <?php /*** Created by PhpStorm.* User: 28010* Date: 2022/1/17* Time: 13:50*** 1.这里图片的数据是从数据库里面查询取 ...

  3. golang 切片的三种简单使用方式及区别

    概念 切片(slice)是建立在数组之上的更方便,更灵活,更强大的数据结构.切片并不存储任何元素而只是对现有数组的引用. 三种方式及细节案例 ①定义一个切片,然后让切片去引用一个已经创建好的数组 pa ...

  4. Golang切片的三种简单使用方式及区别

    概念 切片(slice)是建立在数组之上的更方便,更灵活,更强大的数据结构.切片并不存储任何元素而只是对现有数组的引用. 三种方式及细节案例 ①定义一个切片,然后让切片去引用一个已经创建好的数组 pa ...

  5. java怎么倒计时_详解java倒计时三种简单实现方式

    写完js倒计时,突然想用java实现倒计时,写了三种实现方式 一:设置时长的倒计时: 二:设置时间戳的倒计时: 三:使用java.util.Timer类实现的时间戳倒计时 代码如下: package ...

  6. 图片切换的一种简单的方式

    前不久我的一个朋友想要我帮他写一个图片切换的样式,我就随便从网上下下载了一个模版,结果里面的图片切换是需要js调用的,最坑的是js还加了密!没办法,还是自己老老实实写吧! 分享给大家,以后用这种吧,简 ...

  7. 关于HTML几种简单布局方式

    文章目录 前言 RelatedWords(本章单词) 一.响应式布局(Responsive layout) 1.响应式布局是什么? 2.怎么使用响应式? (1).弃用px改用em或%为单位 (2).使 ...

  8. python爬虫爬取图片代码_Python爬虫入门:批量爬取网上图片的两种简单实现方式——基于urllib与requests...

    Python到底多强大,绝对超乎菜鸟们(当然也包括我了)的想象.近期我接触到了爬虫,被小小地震撼一下.总体的感觉就两个词--"强大"和"有趣".今天就跟大家分享 ...

  9. python爬虫快速下载图片_Python爬虫入门:批量爬取网上图片的两种简单实现方式——基于urllib与requests...

    Python到底多强大,绝对超乎菜鸟们(当然也包括我了)的想象.近期我接触到了爬虫,被小小地震撼一下.总体的感觉就两个词--"强大"和"有趣".今天就跟大家分享 ...

最新文章

  1. 打通B/S与C/S !让HTML5 WebSocket与.NET Socket公用同一个服务端!
  2. MultiRow发现之旅(六)- 使用MultiRow开发票据应用(附源码)
  3. C#进阶系列——WebApi 跨域问题解决方案:CORS
  4. java读书心得_Java读书笔记 20100815
  5. ADO.NET Entity Framework -Code Fisrt (二)
  6. 谷歌离线地图Api附获取教程
  7. html输入完账号密码才能跳转,HTML输入字段跳转
  8. 立即执行函数(IIFE)闭包
  9. 知物由学 |“网状世界”下,无处可逃的信息安全
  10. python交互式方式、代码文件方式_涨见识了,在终端执行 Python 代码的 6 种方式
  11. Noip模拟题解题报告
  12. CTF--Do you like xml
  13. EH集团筹集逾500万瑞士法郎,用于推进其零排放燃料电池技术
  14. web课程设计网页制作、基于HTML+CSS大学校园班级网页设计
  15. 康考迪亚计算机科学需要gre吗,康考迪亚大学研究生院化学工具专业录取条件
  16. 搞一下整车以太网技术 | 04 CBS基于信用整形
  17. 【解决方案】如何搭建运动场体育赛事直播方案:EasyCVR综合智能化体育赛事直播
  18. 在STM32上实现NTFS之4:GPT分区表的C语言实现(1):主GPT表头的实现
  19. 【自然语言处理】【多模态】BLIP:面向统一视觉语言理解和生成的自举语言图像预训练
  20. 力扣算法学习计划打卡:第一天

热门文章

  1. android权限检查
  2. 今后几个月的IT读书计划
  3. 一套很好的.net控件radcontrols介绍
  4. LeetCode(771)——宝石与石头(JavaScript)
  5. Linux---管道通信的使用
  6. 【Vue指令】—v-if、v-show二者用法及区别
  7. 六级词汇打卡第三天(三)
  8. 深入理解CSS中的line-height的使用
  9. 住150平米以上的房子是怎样一种体验?
  10. 员工不愿意被调岗, 怎么办?