2015-01-08 48 views
1

我是C#中的新手(夜校之後),我正在嘗試一些東西(在課堂上還沒有看到它)。graphics.drawline使線條延伸

我想建立一個碼垛工具,它顯示給pallatize在托盤箱的最佳方式。 編碼之前,我正在研究如何顯示托盤。

我一眼看到在組合Graphics.Drawline方法用的OnPaint梅索德的覆蓋,我也沒有麻煩畫線,但它始終是大!

爲了測試我自己的狀態設置爲500 * 500,我想行500pxl的。如果我重新調整窗口的大小,我會馬上看到該行的末尾,但它仍然會持續大約5-7pxl。

度量標準或其他內容有差異嗎?下面是我使用的代碼示例。

感謝您的幫助,無法在網絡上找到任何相關的話題可以解釋這一(也許它只是明顯的...)。

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); 

    } 

回答

0

這很可能是由你在畫這個窗口而引起的。如果你環顧四周窗戶的邊緣形成彈出(假設你使用的是Windows窗體應用程序),你會看到一個邊境。

此邊框包含在窗口的寬度中。這就是爲什麼這條線似乎繼續走過你的窗口邊緣 - 你看不到線的實際結束,直到你拉伸窗口並移動其邊界。