永发信息网

vb程序设计中自己画线怎样使用随机颜色

答案:2  悬赏:40  手机版
解决时间 2021-03-22 17:09
vb程序设计中自己画线怎样使用随机颜色
最佳答案
使用Line 方法
在对象上画直线和矩形。
语法
object.Line [Step] (x1, 1) [Step] (x2, y2), [color], [B][F]
Line 方法的语法有以下对象限定符和部分:
部分 描述
object 可选的。 对象表达式,其值为“应用于”列表中的对象。如果object 省略,具有焦点的窗体作为object。
Step 可选的。关键字,指定起点坐标,它们相对于由 CurrentX 和 CurrentY 属性提供的当前图形位置。
(x1, y1) 可选的。Single (单精度浮点数),直线或矩形的起点坐标。ScaleMode 属性决定了使用的度量单位。如果省略,线起始于由 CurrentX 和 CurrentY 指示的位置。
Step 可选的。关键字,指定相对于线的起点的终点坐标。
(x2, y2) 必需的。Single (单精度浮点数),直线或矩形的终点坐标。
color 可选的。Long (长整型数),画线时用的 RGB 颜色。如果它被省略,则使用 ForeColor 属性值。可用 RGB 函数或 QBColor 函数指定颜色。
B 可选的。如果包括,则利用对角坐标画出矩形。
F 可选的。如果使用了 B 选项,则 F 选项规定矩形以矩形边框的颜色填充。不能不用 B 而用 F。如果不用 F 光用 B,则矩形用当前的 FillColor 和 FillStyle 填充。FillStyle 的缺省值为 transparent。
例:
Private Sub Form_Load()
Me.AutoRedraw = True
Line (100, 100)-(2100, 2100), vbBlue, BF
End Sub
全部回答
很简单啊,两种方法: 一、能支持画图的控件都有前景色的设置,更改前景色就可以了,方便安全:forecolor属性 二、如果想用api的话,需要如下步骤: 1、建立画笔 declare function createpen lib "gdi32" (byval npenstyle as long, byval nwidth as long, byval crcolor as long) as long 说明: 用指定的样式、宽度和颜色创建一个画笔 返回值: long,如函数执行成功,就返回指向新画笔的一个句柄;否则返回零 参数表: 参数 类型及说明 npenstyle long,指定画笔样式,可以是下述常数之一 ps_solid 画笔画出的是实线 ps_dash 画笔画出的是虚线(nwidth必须是1) ps_dot 画笔画出的是点线(nwidth必须是1) ps_dashdot 画笔画出的是点划线(nwidth必须是1) ps_dashdotdot 画笔画出的是点-点-划线(nwidth必须是1) ps_null 画笔不能画图 ps_insideframe 画笔在由椭圆、矩形、圆角矩形、饼图以及弦等生成的封闭对象框中画图。如指定的准确rgb颜色不存在,就进行抖动处理 nwidth long,以逻辑单位表示的画笔的宽度 crcolor long,画笔的rgb颜色 注解 一旦不再需要画笔,记得用deleteobject函数将其删除 2、关联画笔 declare function selectobject lib "gdi32" alias "selectobject" (byval hdc as long, byval hobject as long) as long 说明:为设备场景指定画笔,也可以是刷子等,这里用画笔 参数表 参数 类型及说明 hdc long,一个设备场景的句柄 hobject long,一个画笔、位图、刷子、字体或区域的句柄 3、作图 省略 4、删除画笔 declare function deleteobject lib "gdi32" alias "deleteobject" (byval hobject as long) as long 不用的画笔一定要删除 总的来说不如直接更改forecolor来的方便。但适用范围广,比如在不是本程序的地方也可以画图。 例句: 声明: declare function deleteobject lib "gdi32" (byval hobject as long) as long '删除画笔 declare function selectobject lib "gdi32" (byval hdc as long, byval hobject as long) as long '为设备场景指定画笔等 declare function polyline lib "gdi32" (byval hdc as long, lppoint as pointapi, byval ncount as long) as long '画线 declare function createpen lib "gdi32" (byval npenstyle as long, byval nwidth as long, byval crcolor as long) as long '创建画笔 type pointapi x as long y as long end type 代码: dim dian(5) as pointapi, bi as long 'me.forecolor = rgb(255, 255, 0)'用第一种方法,只用一句代码即可 bi = createpen(0, 1, rgb(255, 0, 255)) selectobject me.hdc, bi print bi dian(0).x = 0 dian(0).y = 0 dian(1).x = 100: dian(1).y = 120 dian(2).x = 50: dian(2).y = 30 '.......此处省略 polyline me.hdc, dian(0),6 deleteobject bi
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
《纸上的故乡》阅读答案
嘉宝莉漆吉安县专卖店地址在什么地方,想过去
单选题f(x),g(x)是定义在R上的函数,h(
庆元县鼎旺寄售行怎么去啊,有知道地址的么
恭祝开业古代贺词,结婚贺词 古文版 5分
牙龈出血吃什么
崇州市夜市小吃街在哪里
Oh,he has no hair,he is baid,and he also h
什么是汇有财这个的业务
好评晒图怎么删除,手机版美丽说我想评价晒图
单选题据统计,1925年苏联的种植业比1913年增
最好创一个关于什么的公众号?
语文题, 狼之歌
恐怖电影有一个女的参加了有奖金的比赛,结果
龙锦佳园我想知道这个在什么地方
推荐资讯
小蚁4K运动相机延时拍照的时候可以设置多少时
家庭厨房就是一个充盈的化学小世界,“柴米油
苹果6微信视频对方听不到我声音
我上个月1月2号来的例假,8号没了,这个月6号
黑米吃多了对人体有害吗
马料沟村地址在什么地方,想过去办事
1964年印度为何和巴基斯坦打仗,中国为何会出
求出包王女第四季ova(只要第四季ova)百度云
载脂蛋白B试剂盒(免疫透射比浊法)怎么用,
单选题下列保护宇宙环境的做法,正确的是①限
求助STM8的TIM1的输入捕获问题
欧洲三大著名旅游国共同的旅游资源是A.都有峡
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?