利用C#窗体应用程序编写一个Line Length应用程序 要求如下:在窗体上绘制一条黑色直线并计算他的长度,如图所示。该直线从按下鼠标按钮出的坐标开始,直到释放鼠标按钮的那点结束。应用程序应当在“Length = ”标签中显示直线的长度(即两个端点之间的距离)。
时间: 2024-03-07 14:49:02 浏览: 149
C# 实现窗体画线功能
4星 · 用户满意度95%
好的,以下是使用C#编写Line Length应用程序的代码:
```csharp
using System;
using System.Drawing;
using System.Windows.Forms;
namespace LineLengthApp
{
public partial class LineLengthForm : Form
{
private Point lineStart;
private Point lineEnd;
private int lineLength;
public LineLengthForm()
{
InitializeComponent();
lineStart = Point.Empty;
lineEnd = Point.Empty;
lineLength = 0;
}
private void LineLengthForm_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
lineStart = new Point(e.X, e.Y);
}
}
private void LineLengthForm_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
lineEnd = new Point(e.X, e.Y);
lineLength = (int)Math.Sqrt(Math.Pow(lineEnd.X - lineStart.X, 2) + Math.Pow(lineEnd.Y - lineStart.Y, 2));
lengthLabel.Text = $"Length = {lineLength}";
DrawLine();
}
}
private void DrawLine()
{
Graphics g = CreateGraphics();
Pen pen = new Pen(Color.Black);
g.DrawLine(pen, lineStart, lineEnd);
}
}
}
```
在这个窗体应用程序中,我们使用了`MouseDown`和`MouseUp`事件来获取绘制直线的起点和终点。我们使用勾股定理来计算直线长度,并将其显示在标签中。我们还使用`Graphics`类和`Pen`对象来在窗体上绘制直线。
阅读全文