C#控件picturebox實(shí)現(xiàn)畫(huà)圖功能
本文實(shí)例為大家分享了C# picturebox實(shí)現(xiàn)畫(huà)圖功能的具體代碼,供大家參考,具體內(nèi)容如下
在Form上添加 一個(gè)pictureBox,一個(gè)button控件
如圖所示:

這樣我們的繪畫(huà)面板就弄好了,把pictureBox的dock屬性設(shè)置為fill,按鍵為清屏的作用。
private Point p1, p2;//定義兩個(gè)點(diǎn)(啟點(diǎn),終點(diǎn))
private static bool drawing=false;//設(shè)置一個(gè)啟動(dòng)標(biāo)志
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
p1 = new Point(e.X, e.Y);
p2 = new Point(e.X, e.Y);
drawing = true;
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
drawing = false;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
Graphics g = pictureBox1.CreateGraphics();
if(e.Button ==MouseButtons.Left)
{
if (drawing)
{
//drawing = true;
Point currentPoint = new Point(e.X, e.Y);
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;//消除鋸齒
g.DrawLine(new Pen(Color.Blue, 2), p2,currentPoint);
p2.X = currentPoint.X;
p2.Y = currentPoint.Y;
}
}
}
//清屏操作
private void button1_Click(object sender, EventArgs e)
{
Graphics g = pictureBox1.CreateGraphics();
g.Clear(Color.White);
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
這篇文章主要介紹了c#讀寫(xiě)注冊(cè)表示例,示例中有詳細(xì)注釋?zhuān)蠹覅⒖际褂冒?/div> 2014-01-01
C#實(shí)現(xiàn)Modbus通信功能的示例詳解
Modbus作為一種開(kāi)放且廣泛采用的通信協(xié)議,在實(shí)現(xiàn)設(shè)備間數(shù)據(jù)交換方面發(fā)揮著至關(guān)重要的作用,它不僅支持多種物理層接口(如RS-232,?RS-485,?以及以太網(wǎng)),還因其簡(jiǎn)單易用的特點(diǎn)而被大家所青睞,本文通過(guò)實(shí)際示例介紹如何在C#項(xiàng)目中輕松實(shí)現(xiàn)Modbus通信功能2024-11-11
Unity UGUI實(shí)現(xiàn)卡片橢圓方向滾動(dòng)
這篇文章主要為大家詳細(xì)介紹了UGUI實(shí)現(xiàn)卡片橢圓方向滾動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03
Visual C#中如何使用IComparable和IComparer接口
這篇文章主要介紹了C#中使用IComparable和IComparer接口,在本例中,該對(duì)象被用作第二個(gè)參數(shù)被傳遞給Array.Sort的接受IComparer實(shí)例的重載方法,需要的朋友可以參考下2023-04-04最新評(píng)論

