读书人

picturebox.Circle 在不同的点上画雷同

发布时间: 2013-08-04 18:26:16 作者: rapoo

picturebox.Circle 在不同的点上画相同大小的圆效果不一致呀,有的大有的小
页面上就一个picturebox

                                                                            
[解决办法]
半径太小,在某些位置上舍入误差太大。你试试:
    Picture1.FillStyle = 0
Picture1.FillColor = vbYellow
Picture1.Circle (300, 300), 50, vbBlack
Picture1.Circle (900, 300), 50, vbBlack

[解决办法]
无论逻辑坐标用什么单位,最终绘图结果总是用像素表示的。
在默认 96DPI 的屏幕上,1像素 = 15缇。
所以你的绘图函数转换成像素单位就是
Picture1.Circle (20, 20), 3.33333333333333, vbBlack
Picture1.Circle (46.6666666666667, 20), 3.33333333333333, vbBlack

绘图结果小数取整,偏差1个像素很正常,谁叫你的圆这么小呢。
用放大镜看看,我可以说这不是圆,这是矩形切掉了四角的八边形。

读书人网 >VB

热点推荐