如何动态改变VB2005的drawlines(pens,pointf)的pointf数组的长度?

notstop 2008-08-02 02:21:56
因为程序中每秒要画几千条连续的线条,且需要动态改变要画线条的数量。有drawlines()和drawline(),因为drawlines效率比drawlin的高,所以打算用drawlines(pen,pointf),但是如何动态地改变pointf的长度?高手指点下。
谢谢!
...全文
138 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
akenny0423 2008-08-19
  • 打赏
  • 举报
回复
redim preserve TestPointF(你计算得到的值)
yanlongwuhui 2008-08-04
  • 打赏
  • 举报
回复
Dim GPic As Graphics
Dim TestPointF(100) As PointF
Dim i As Integer
For i = 0 To 100
TestPointF(i).X = i
TestPointF(i).Y = Rnd() * 200
Next
'重新定义大小,并重新赋值
ReDim Preserve TestPointF(150)
For i = 0 To 150
TestPointF(i).X = i
TestPointF(i).Y = Rnd() * 200
Next
' 只对新增的进行赋值
For i = 101 To 150
TestPointF(i).X = i
TestPointF(i).Y = Rnd() * 200
Next
notstop 2008-08-04
  • 打赏
  • 举报
回复
TestPointF不是不可以REDIM吗?
yanlongwuhui 2008-08-04
  • 打赏
  • 举报
回复
redim preserve TestPointF(你需要的值)
notstop 2008-08-04
  • 打赏
  • 举报
回复
下面是我的其中一段代码,只能设定固定的TestPointF长度,这里的长度是TestPointF(100),不知道如何动态改变这个长度?
望大虾指点!
Dim GPic As Graphics
Dim TestPointF(100) As PointF
Dim i As Integer
For i = 0 To 100
TestPointF(i).X = i
TestPointF(i).Y = Rnd() * 200
Next
GPic.Dispose()
notstop 2008-08-04
  • 打赏
  • 举报
回复
下面是我的其中一段代码,只能设定固定的TestPointF长度,这里的长度是TestPointF(100),不知道如何动态改变这个长度?
望大虾指点!
Dim GPic As Graphics
Dim TestPointF(100) As PointF
Dim i As Integer
For i = 0 To 100
TestPointF(i).X = i
TestPointF(i).Y = Rnd() * 200
Next
GPic.Dispose()
notstop 2008-08-02
  • 打赏
  • 举报
回复
虽然用drawline()我可以动态控制画多少根线,但因为发现drawline的CPU占用比drawlines大了40%左右,所以考虑采用drawlines

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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