如何在PictureBox中画直线、矩形、圆?

untitled12 2003-06-15 12:38:26
要求:在PictureBox中点鼠标左键拉到任一点便产生一直线,矩形,和一圆。
有原码更好?
请教?
...全文
212 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
untitled12 2003-06-15
  • 打赏
  • 举报
回复
大哥的意思小弟有点听懂了,不过,小弟是初学者,恳请大哥,写几下代码,好吗?
小弟先谢大哥了!
waterytimes 2003-06-15
  • 打赏
  • 举报
回复
Form应该是PictureBox.
waterytimes 2003-06-15
  • 打赏
  • 举报
回复
直线和矩形只要line就可以了吧,在Form_MouseDown记录鼠标按下的位置坐标,在Form_MouseUp记录鼠标抬起的位置坐标,line 加 B 就是矩形,否则直线.使用Circle做园,只不过取中间值就可以了
Renkey 2003-06-15
  • 打赏
  • 举报
回复
楼上的兄弟们都不赖,不过可以设置颜色哦。
当然给圆来个填充色也行
wefhl 2003-06-15
  • 打赏
  • 举报
回复
上面这个方法不错啊,我以前也是这样做的,不过最好再做边界检查。
xhxh 2003-06-15
  • 打赏
  • 举报
回复
上面的兄弟写的很好啊
waterytimes 2003-06-15
  • 打赏
  • 举报
回复
Dim X1 As Long
Dim Y1 As Long

Dim X2 As Long
Dim Y2 As Long


Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
X1 = X
Y1 = Y
End Sub

Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
X2 = X
Y2 = Y

Picture1.Line (X1, Y1)-(X2, Y2)
Picture1.Line (X1, Y1)-(X2, Y2), , B
Picture1.Circle ((X1 + X2) / 2, (Y1 + Y2) / 2), Abs(X2 - X1) / 2, (X1 / X2) / (Y1 / Y2)

End Sub

我刚来,初学,以后多照顾

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧