亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#實現小截屏軟件功能

2019-10-29 21:09:48
字體:
來源:轉載
供稿:網友

第一次寫博客,文筆較差,將就看吧

日常生活中會經常使用到截屏功能,使用最多的無非就是Windows自帶的截圖工具、QQ截圖和PrintScreen鍵,但要達到截圖到word或保存到文件,需要鼠標選擇多次。比如我們想截圖并將圖插入到Word中,不需要保存圖片,我們希望直接點擊截圖按鈕,選擇截圖區域,Ctrl+V簡單三步就行了(感覺說了好多廢話),切入正題。

1.基本功能

選擇屏幕區域后提醒你保存所截的圖片,或直接將所截圖片放到剪切板里(以便用Ctrl+V粘貼)。

2.界面設計

界面很簡單,無非就是可實現以上功能的兩個按鈕和其他文字,見圖:

C#,截圖

界面的屬性需要注意幾個問題:

1)窗口設為固定大小,并禁用窗口最大化(因為我們不希望窗口大小會變)

C#,截圖

C#,截圖

2)窗口最好設為頂置

C#,截圖

3)把兩個文字label和兩個按鈕都放到一個panel里,以便于后面程序對控件屬性的操作

4)那么大的按鈕,最好改變一下它的樣式,還可以設置背景為gif動圖

C#,截圖

3.功能實現

那么關鍵問題來了,怎么截圖呢?見下圖

C#,截圖

原理其實很簡單,就是在點擊按鈕后,窗口變為全屏覆蓋在屏幕最上方,并變為半透明,使你能看到窗口下面的屏幕內容,然后拖動鼠標(此時其實是在軟件的主窗口上拖動,這樣就方便程序捕捉鼠標坐標了),根據坐標在屏幕上繪制選框,接著松開鼠標后,根據鼠標落下和松開的坐標,截取屏幕,最后保存或復制到剪切板。

4.敲代碼吧

 

using System;using System.Windows.Forms;using System.Drawing;//繪圖要用using System.Threading;//延時函數要用namespace 截屏{  public partial class Form1 : Form  {    bool mouseDown = false, havePainted = false;    Point start, end;    Point start1, end1;    Size size = new Size(0, 0);    bool saveFile = true;    public Form1()    {      InitializeComponent();    }    private void button1_Click(object sender, EventArgs e)    {      ReadyToCaptrue();      saveFile = true;    }    private void Form1_MouseDown(object sender, MouseEventArgs e)    {      start = e.Location;      mouseDown = true;    }    private void Form1_MouseUp(object sender, MouseEventArgs e)    {      if (size.Width != 0 && size.Height != 0)      {        ControlPaint.DrawReversibleFrame(new Rectangle(start1, size), Color.Transparent, FrameStyle.Dashed);        havePainted = false;      }      end = e.Location;      if (start.X > end.X)      {        int temp = end.X;        end.X = start.X;        start.X = temp;      }      if (start.Y > end.Y)      {        int temp = end.Y;        end.Y = start.Y;        start.Y = temp;      }      this.Opacity = 0.0;      Thread.Sleep(200);      if (end.X - start.X > 0 && end.Y - start.Y > 0)      {        Bitmap bit = new Bitmap(end.X - start.X, end.Y - start.Y);        Graphics g = Graphics.FromImage(bit);        g.CopyFromScreen(start, new Point(0, 0), bit.Size);        if (saveFile)        {          SaveFileDialog saveFileDialog = new SaveFileDialog();          saveFileDialog.Filter = "png|*.png|bmp|*.bmp|jpg|*.jpg|gif|*.gif";          if (saveFileDialog.ShowDialog() != DialogResult.Cancel)          {            bit.Save(saveFileDialog.FileName);          }        }        else        {          Clipboard.SetImage(bit);        }        g.Dispose();      }      this.WindowState = FormWindowState.Normal;      this.FormBorderStyle = FormBorderStyle.FixedSingle;      panel1.Visible = true;      this.Opacity = 1;      mouseDown = false;    }    private void Form1_MouseMove(object sender, MouseEventArgs e)    {      if (mouseDown)      {        if (size.Width != 0 && size.Height != 0 && havePainted)        {          ControlPaint.DrawReversibleFrame(new Rectangle(start1, size), Color.Transparent, FrameStyle.Dashed);        }        end1 = e.Location;        size.Width = Math.Abs(end1.X - start.X);        size.Height = Math.Abs(end1.Y - start.Y);        start1.X = (start.X > end1.X) ? end1.X : start.X;        start1.Y = (start.Y > end1.Y) ? end1.Y : start.Y;        if (size.Width != 0 && size.Height != 0)        {          ControlPaint.DrawReversibleFrame(new Rectangle(start1, size), Color.Transparent, FrameStyle.Dashed);          havePainted = true;        }      }    }    private void button2_Click(object sender, EventArgs e)    {      ReadyToCaptrue();      saveFile = false;    }    private void Form1_Load(object sender, EventArgs e)    {    }    private void ReadyToCaptrue()    {      this.Opacity = 0.1;      panel1.Visible = false;      this.FormBorderStyle = FormBorderStyle.None;      this.WindowState = FormWindowState.Maximized;    }  }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产a∨精品一区二区三区不卡| 亚洲国产精品资源| 欧美精品一区三区| 国产日韩在线亚洲字幕中文| 欧美大片欧美激情性色a∨久久| 啊v视频在线一区二区三区| 亚洲欧美日韩中文在线| 欧美精品日韩www.p站| 中文字幕亚洲激情| 亚洲性视频网站| 色综合天天狠天天透天天伊人| 8050国产精品久久久久久| 久久人人爽人人爽人人片av高请| 91人人爽人人爽人人精88v| 日韩av免费观影| 国产日本欧美一区二区三区| 日韩电影免费观看中文字幕| 在线日韩欧美视频| 欧美日韩中国免费专区在线看| 亚洲一区二区三区成人在线视频精品| 成人久久久久久久| 欧美日韩视频免费播放| 少妇激情综合网| 久久的精品视频| 亚洲女成人图区| 国产香蕉精品视频一区二区三区| 国产精选久久久久久| 自拍偷拍亚洲精品| 成人在线视频网站| 日韩电影中文 亚洲精品乱码| 精品国产一区二区三区四区在线观看| 欧美一级视频在线观看| 最新的欧美黄色| 欧美在线视频导航| 久久久久久久久久久免费| 中日韩美女免费视频网站在线观看| 久久人人爽人人爽爽久久| 日本成人黄色片| 成人黄色免费看| 日韩一级黄色av| 亚洲丁香久久久| 精品视频在线播放色网色视频| 日本久久久久久久久久久| 欧美精品videossex性护士| 亚洲一区二区三区xxx视频| 视频一区视频二区国产精品| 国产精品a久久久久久| 亚洲精品视频中文字幕| 国产日韩欧美另类| 日韩精品在线观| 欧美一区二区三区免费观看| 日韩精品视频在线| 一区二区三区天堂av| 国产成人免费av| 亚洲品质视频自拍网| 日韩精品免费在线视频| 懂色aⅴ精品一区二区三区蜜月| 日韩中文视频免费在线观看| 伊人一区二区三区久久精品| 亚洲资源在线看| 欧美在线免费视频| 欧美成人午夜激情视频| 久久国产精彩视频| 欧美日本高清视频| 久久69精品久久久久久久电影好| 亚洲免费一级电影| 日韩欧美亚洲范冰冰与中字| 欧美精品日韩www.p站| 国产精品 欧美在线| 欧美激情视频播放| 国产精品69久久久久| 精品国产欧美一区二区三区成人| 91网站在线看| 日韩一区二区欧美| 国产精品美女www爽爽爽视频| 岛国av在线不卡| 久久伊人色综合| 亚洲精品丝袜日韩| 97人人做人人爱| 日韩av毛片网| 91亚洲精品久久久久久久久久久久| 亚洲人成伊人成综合网久久久| 在线观看中文字幕亚洲| 国产精品三级网站| 欧美激情国产日韩精品一区18| 国产精品久久久久久久久免费| 国语自产精品视频在线看一大j8| 亚洲视频在线免费观看| 亚洲国产精品久久久久秋霞不卡| 久久久久久91香蕉国产| 热久久99这里有精品| 久精品免费视频| 日韩精品电影网| 久久五月天综合| 国产精品成人一区| 91精品啪在线观看麻豆免费| 97精品国产97久久久久久| 成人免费在线视频网址| 成人天堂噜噜噜| 亚洲视频免费一区| 亚洲欧美中文字幕在线一区| 国产v综合v亚洲欧美久久| 日韩在线视频线视频免费网站| 欧美一级淫片videoshd| 91精品国产91久久久| 好吊成人免视频| 久久久久久久一区二区| 久久91亚洲人成电影网站| 国内精品久久影院| 国产精品亚洲第一区| 亚洲欧美一区二区三区久久| 另类图片亚洲另类| y97精品国产97久久久久久| 亚洲女同性videos| 日韩av在线电影网| 久久夜色精品国产欧美乱| 啪一啪鲁一鲁2019在线视频| 91久久久精品| 91亚洲精品久久久| 国产精品福利观看| 日韩专区在线观看| 欧美日韩亚洲视频一区| 亚洲欧美日韩中文在线| 国产精品99蜜臀久久不卡二区| 亚洲成人精品视频| 亚洲欧美精品suv| 亚洲伊人成综合成人网| 日韩精品日韩在线观看| 久久久精品电影| 亚洲黄色片网站| 日本韩国在线不卡| 777国产偷窥盗摄精品视频| 亚洲天堂视频在线观看| 欧美老妇交乱视频| 韩国三级日本三级少妇99| 亚洲国产天堂久久综合| 亚洲伊人一本大道中文字幕| 日本伊人精品一区二区三区介绍| 欧美日本国产在线| 精品亚洲国产成av人片传媒| 中文字幕亚洲无线码a| 亚洲男人的天堂在线| 日韩视频中文字幕| 日韩欧美国产网站| 92国产精品久久久久首页| 美女黄色丝袜一区| 欧美日韩激情小视频| 欧美成人精品一区二区三区| 久久亚洲成人精品| 国产精品三级网站| 欧美极品少妇xxxxⅹ喷水| 日韩视频在线一区| 亚洲欧美成人在线| 日韩精品视频观看| 亚洲专区国产精品| 一区二区三区国产视频| 欧美在线中文字幕| 国内精品久久久久影院 日本资源| 懂色av影视一区二区三区| 久久精品国产成人| 国产精品久久久久久久电影| 91精品国产免费久久久久久| 国产精品久久久久久超碰| 91在线播放国产|