VB問題,在什麼控制元件內可以畫圖,線的寬度和顏色如何控制

2022-12-23 13:55:26 字數 4300 閱讀 5212

1樓:

一般情況,我們在窗體(from)或者**框(picturebox)內畫圖。

下面是一個在窗體內畫線的例子:

private sub form_click()

me.drawwidth = 1 '設定寬度(其他寬度下線型均為實線)

for i = 0 to 6

me.drawstyle = i '設定線條型別

me.line (1000 * i + 100, 100)-(1000 * i + 100, 6000), vbred '線的起點、終點和顏色

next i

end sub

下面是一個在**框內畫線的例子(當然窗體內必須有一個**框,並且假定name屬性為picture1):

private sub form_click()

picture1.drawwidth = 1 '設定寬度(其他寬度下線型均為實線)

for i = 0 to 6

picture1.drawstyle = i '設定線條型別

picture1.line (1000 * i + 100, 100)-(1000 * i + 100, 6000), vbred '線的起點、終點和顏色

next i

end sub

2樓:

vb6 畫圖原始碼 可實現功能 線 圓 矩形 圖形移動 顏色 線寬更改 大小更改

3樓:匿名使用者

picture,form是容器控制元件,可以放線條,也可以放其他控制元件。

設定控制元件的font屬性。

請問,vb中可以畫線的粗細和指定畫出的線是什麼顏色嗎?

4樓:尚心部落

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。

說明畫聯結的線時,前一條線的終點就是後一條線的起點。

線的寬度取決於 drawwidth 屬性值。在背景上畫線和矩形的方法取決於 drawmode 和 drawstyle 屬性值。

執行 line 方法時, currentx 和 currenty 屬性被引數設定為終點。

這個方法不能用於with...end with 語句塊。

5樓:匿名使用者

當然可以,否則這工具能賣出去麼?msdn裡面有示例,看一下就知道怎麼畫 。

這個示例用 line 方法在窗體上畫了幾個同心矩形。要執行這個示例,將此**放入窗體的 general 部分。按 f5 並單擊窗體。

sub form_click ()

dim cx, cy, f, f1, f2, i ' 宣告變數。

scalemode = 3 ' 設定 scalemode 為畫素。

cx = scalewidth / 2 ' 水平中點。

cy = scaleheight / 2 ' 垂直中點。

drawwidth = 8 ' 設定 drawwidth。

for i = 50 to 0 step -2

f = i / 50 ' 執行中間步驟。

f1 = 1 - f: f2 = 1 + f ' 計算。

forecolor = qbcolor(i mod 15) ' 設定前景顏色。

line (cx * f1, cy * f1)-(cx * f2, cy * f2), , bf

next i

doevents ' 做其它處理。

if cy > cx then ' 設定 drawwidth。

drawwidth = scalewidth / 25

else

drawwidth = scaleheight / 25

end if

for i = 0 to 50 step 2 ' set up loop.

f = i / 50 ' 執行中間。

f1 = 1 - f: f2 = 1 + f ' 計算。

line (cx * f1, cy)-(cx, cy * f1) ' 畫左上角。

line -(cx * f2, cy) ' 畫右上角。

line -(cx, cy * f2) ' 畫右下角。

line -(cx * f1, cy) ' 畫左下角。

forecolor = qbcolor(i mod 15) ' 每次改變顏色。

next i

doevents ' 進行其它處理。

end sub

6樓:匿名使用者

可以參考一下:

private sub form_load()me.autoredraw = true

me.scalemode = 6 '單位設為毫米me.drawwidth = 5 '5毫米dim i, j as long

for i = 1 to 10

if i > 5 then

line (5, i * 2)-(50, i * 2), vbblue

else

line (5, i * 2)-(50, i * 2), vbredend if

next i

end sub

7樓:匿名使用者

private sub form_click()me.drawwidth = 5 '5畫素 自己轉換你想要的5毫米for i = 1 to 5

me.line (100, 200 * i)-(1500, 200 * i), vbred

next

for i = 1 to 5

me.line (100, 1000 + 200 * i)-(1500, 1000 + 200 * i), vbblue

next

end sub

8樓:匿名使用者

object..drawwidth = 10

vb中,如何改變控制元件的顏色?

9樓:沈欣達

private sub form_mousemove(button as integer, shift as integer, x as single, y as single)

private sub text1_mousemove(button as integer, shift as integer, x as single, y as single)

移到text1用mousemove事件使label1顏色變紫,滑鼠離開label1也就是到了窗體上只需在窗體中加入mousemove事件即可。試試看保證可行,而且是最簡單的語句。

在vb中,要改變某個控制元件的寬度,應修改屬性哪個

10樓:

: 調整datagrid 控制元件的格寬度 msflexgrid控制元件 列寬度

你的採納是我前進的動力,還有不懂的地方,請繼續「追問」。

如你還有別的問題,可另外向我求助;答題不易,互相理解,互相幫助。

VB做工資管理系統時adodc控制元件的問題

adodc1.recordsource update 使用者表 set 密碼 trim text3.text where 使用者名稱 trim text1.text 控制元件不能這樣寫的 沒有adodc1.refresh,就不會更改,有這句,就會出錯,目前不知道什麼原因 我是這樣做的 if text...

高數問題在極限中n與有什麼關係,高數問題在極限中N與有什麼關係

根據極限的定義,對任意 0,都存在一個n,使得當n n,有 也就是說,和n是有關係的,我們可以把n記作n 那麼,當n n時,我們有 某個式子絕對值 這就符合極限的定義,從而根據後面的 來確定n.高等數學有關極限那裡的任取值和n有什麼關係 首先選取一個任意小的正數 對於這個已選為定值的 如果在數列中可...

在企業中,績效可以解決什么問題,在企業中,績效可以解決什麼問題?

績效可以解決員工偷懶的問題,讓員工能更好的投入工作 按照績效來進行工資的分配,也可以解決員工心理不平衡的問題。績效也是你升職必不可少的,你的績效越好,前途也就更加坦蕩,因為企業看中每個員工所創造的價值,價值越大越能收到青睞。如果你的領頭上司是一個能力不夠出色的人,那麼良好的績效可以讓你被上級所看中,...