再次提问picturebox控件line的问题...... 热盼

shimd0604 2005-10-31 09:17:32
我使用下列代码在picture1上用line画81条线,每条线相距1毫米。结果发现距离不均匀。保存为.bmp文件后,距离也不均匀,打印的结果也是如此。????

intii = 0
Do While Intii <= 80
Picture1.Line (12, 100 - Intii)-(9, 100 - Intii)
Intii = Intii + 1
Loop


...全文
229 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwolves 2005-11-01
  • 打赏
  • 举报
回复
用LINE 控件效果还可以:

'Add a line control with index=0 in a picturebox
Private Sub Command1_Click()
Dim i As Integer
On Error Resume Next
For i = 0 To 100
Load Line1(i)
Line1(i).Visible = True
Line1(i).X1 = 100
Line1(i).X2 = 2900
Line1(i).Y1 = i * 60
Line1(i).Y2 = i * 60
Next
End Sub

Private Sub Form_Load()
Picture1.Move 0, 0, 3000, 6000
End Sub
shimd0604 2005-11-01
  • 打赏
  • 举报
回复
northwolves: load line(i)的结果可以在picturebox中吗?能否与circle的结果一同保存为.bmp文件?

rainstormmaster 2005-10-31
  • 打赏
  • 举报
回复
//我使用下列代码在picture1上用line画81条线,每条线相距1毫米

1毫米转换成像素并不是整数个,这就是产生问题的原因
shimd0604 2005-10-31
  • 打赏
  • 举报
回复
viena holle,我已经试过了你说的像素,结果是一样的?twip pixel mm inch cm 都试过了。都失败了,有没有另外的方法?
viena 2005-10-31
  • 打赏
  • 举报
回复
单位用像素就可以了,换算一下
shimd0604 2005-10-31
  • 打赏
  • 举报
回复
up myself ,I am selfish man? No No NO
rainstormmaster 2005-10-31
  • 打赏
  • 举报
回复
就是这样
脆皮大雪糕 2005-10-31
  • 打赏
  • 举报
回复
不管你用什么单位来画直线,画到picture之上所有的点只能落到以像素为单位的网格上,不论用什么单位最终画在picture上的点都是存在误差的。正如暴风雨所说1毫米转换成像素并不是整数个,严格画出诺干相距1mm的直线是不可能的。
其实你看picture的scalemode属性,当该属性为6的时候以毫米为单位,但是画出来的依旧是不平均的
shimd0604 2005-10-31
  • 打赏
  • 举报
回复
暴风雨:那是否以像素为单位就可以了呢?

1,451

社区成员

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

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