我试图通过简单地在表格周围绘制线条来绘制边框较少形式的矩形,但问题是表格底部和表格左边的线条未绘制这是用于在Form_Paint上绘图的代码
Line (0, 0)-(ScaleWidth, 0), vbWhite ' work
Line (0, 0)-(0, ScaleHeight), vbWhite ' work
Line (ScaleWidth, 0)-(ScaleWidth, ScaleHeight), vbWhite ' not working
Line (0, ScaleHeight)-(ScaleWidth, ScaleHeight), vbWhite ' not working
表单是可调整大小的,因此当我重新调整表单大小时,绘制矩形会产生问题
答案 0 :(得分:2)
你有必要自己画线吗?您可以使用形状控件在 Form_Resize 中调整大小。
Private Sub Form_Resize()
Call shp.Move(0, 0, Me.ScaleWidth, Me.ScaleHeight)
End Sub
线向远处绘制一个像素的原因可能与它基于0的事实有关,实际上你希望它将像素置于 ScaleWidth ,超出屏幕1个像素,因为 ScaleWidth 是基于' 1' .. 因此,如果您想自己绘制线条,可以使用以下内容(如果您的scalemode设置为缇(默认值)):
Line (0, 0)-(ScaleWidth - Screen.TwipsPerPixelX, ScaleHeight - Screen.TwipsPerPixelY), vbWhite, B