graphics.drawline 使线条太大

问题描述 投票:0回答:1

我是 C# 新手,正在尝试一些我在课堂上尚未见过的东西。

我正在尝试构建一个码垛工具,它显示在托盘上码垛箱子的最佳方式。 在编写算法之前,我正在研究如何显示托盘。

我的眼睛注意到了

Graphics.Drawline
方法以及对
OnPaint
方法的重写,我可以毫无困难地画出这条线,但它总是太大!

为了测试,我将表单设置为 500*500,我想要一行 500pxl。我假设如果调整窗口大小,我会立即看到该行的末尾,但它仍然持续大约 5-7 像素。

指标或其他方面有差异吗?下面是我使用的代码示例。

感谢您的任何帮助,在网络上找不到任何相关主题可以解释这一点(也许这就是那么明显......)。

protected override void OnPaint(PaintEventArgs paintEvnt)
    {
        // Get the graphics object 
        Graphics gfx = paintEvnt.Graphics;
        // Create a new pen that we shall use for drawing the line 
        Pen myPen = new Pen(Color.Black);
        // draw pallet
        //lenght1
        gfx.DrawLine(myPen, 0, 50, 500, 50);
       //width1
        gfx.DrawLine(myPen, 500, 50, 500, 100);

    }
c# graphics drawing
1个回答
0
投票

这很可能是由您在其中绘制的窗口引起的。如果您环顾窗口窗体弹出窗口的边缘(假设您正在使用 Windows 窗体应用程序),您会看到一个边框。

此边框包含在窗口的宽度中。这就是为什么这条线似乎稍微超出了窗口的边缘 - 在拉伸窗口并移动其边框之前,您无法看到该线的实际末端。

© www.soinside.com 2019 - 2024. All rights reserved.