我在picture 控件上绘制一个256 * 256 的长度为2厘米的方格,
将其AutoRedraw属性设为True,但是在动态绘制时出现如上错误, 我该怎么办好呢??
将其AutoRedraw属性设为True,但是在动态绘制时出现如上错误, 我该怎么办好呢??
解决方案 »
- 从MSFlexGrid控件把数据导入到excel,请问怎么才能让导入到EXCEL里的数字为数字形式??
- 高手大哥进来回答个问题.小弟不感激不尽!!(在线!!!!!)
- 急啊!我的VB突然不能添加做报表的那些东西了。
- 能不能用一个函数把当前工程中所有的窗体都得到,然后返回一个窗体数组?
- 请问在ListBox控件中怎样加载图标呢??
- vb做的控件,编译成.dll以后不能运行。
- 输入资料后光标跳到MSFLEXGRID的对应数据上,要怎样做.
- on error go to????????
- 数据库问题!!这是个什么错误????快来看看~~ 请教高手!!!!!快来帮帮忙!!!
- 怎么没人回答我?GetWindowText函数为啥不好使?(分数只加给第一个答对者)
- 想知道用winsock传输文件的流量限制是多少?
- 新软件发布: 客户销售管理软件发布,欢迎大家免费使用!
当picture 的 AutoRedraw 属性设为 True 时,不能动态绘制了。
x As Double
y As Double
End Type
Public Rownum As Integer
Public Colnum As Integer
Public StartPoint As Point
Public ValRadius As DoublePublic Sub DrawPane(pic As PictureBox, row As Integer, col As Integer, radius As Double, StartPoint As Point) pic.ScaleMode = 7
pic.DrawWidth = 1
pic.FillColor = RGB(128, 128, 128)
pic.FillStyle = 1
For i = 1 To row Step 1
For j = 1 To col Step 1
pic.Line (StartPoint.x + (i - 1) * (2 * radius), StartPoint.y + (j - 1) * (2 * radius))-(StartPoint.x + i * (2 * radius), StartPoint.y + j * (2 * radius)), RGB(255, 255, 255), B
Next
Next
End SubPrivate Sub sizecmd_Click()
If holdcurrendtrawings = False Then
Untitledfrm1.BKpic.Cls
End If With StartPoint
.x = Val(startpointxtxt.Text)
.y = Val(startpointytxt.Text)
End With
Rownum = Val(Rowtxt.Text)
Colnum = Val(Coltxt.Text)
ValRadius = Val(Radiustxt.Text)
'/////////////////////////
With Untitledfrm1.BKpic
.Left = 0.423
.Top = 0.423
.ScaleMode = 7
.Height = Colnum * 2 * ValRadius + StartPoint.y * 2
.Width = Rownum * 2 * ValRadius + StartPoint.x * 2
End With
'////////////////////////////////////
Call DrawPane(Untitledfrm1.BKpic, Rownum, Colnum, ValRadius, StartPoint)
End Sub
这是调用的全过程, 运行时出现如上的问题。即 rownum= 256 ,colnum = 256 时出现。
Help
我用Picture模拟A3纸时出错,模拟4纸时则正常。解决方法是设置hdc的比例。我的绘图过程是用VC做的DLL,所以是在VC内解决的,大概VB直接调用API也可以解决。