vb怎樣呼叫其他窗體過程函式和變數不是模組

時間 2022-02-01 18:10:04

1樓:

其他窗體過程函式和變數必須要public,然後窗體名.過程名 或 窗體名.變數名就可以呼叫

2樓:匿名使用者

被呼叫的過程函式和變數必須是public定義的(就像模組一樣)呼叫時先寫窗體名,如:

窗體名是form1,用public定義的過程函式和變數分別是:

public x as long

public sub f1()

public function func2() as long則在模組和其它窗體中引用上述定義時:

msgbox form1.x

call form1.f1()

n=func2()

3樓:

窗體名.過程名

窗體名.變數名

窗體名.函式名

不過還是建議你將重複使用的功能寫成乙個函式或過程放在標準模組中

4樓:匿名使用者

窗體名.函式名或者變數名

5樓:

在窗體1中使用窗體2.函式名

如:private sub form_load() 'form1中

form2.text1.text="1"

end sub

6樓:匿名使用者

呼叫名=窗體.函式或窗體.變數

7樓:匿名使用者

dim abc as new 其他窗體

abc.過程函式

8樓:匿名使用者

在vb程式內部 執行dim 其他視窗即可

vb中如何在窗體中呼叫模組的public函式

9樓:

模組中的公共函式本來就可以在任意窗體中呼叫,你遇到什麼困難嗎?

vb 模組中的過程如何呼叫?

10樓:匿名使用者

呼叫過程,呼叫過程有諸多技巧,它們與過程的型別、位置以及在應用程式中的使用方式有關。下面說明如何呼叫 sub 過程和 function 過程。

呼叫 sub 過程

與 sub 過程不同,在表示式中,sub 過程不能用其名字呼叫。呼叫 sub 過程的是乙個獨立的語句。sub 過程還有一點與函式不一樣,它不會用名字返回乙個值。

但是,與 function過程一樣,sub 過程也可以修改傳遞給它們的任何變數的值。

呼叫 sub 過程有兩種方法:

'以下兩個語句都呼叫了名為 myproc 的 sub 過程。

call myproc (firstargument, secondargument)

myproc firstargument, secondargument

注意,當使用 call 語法時,引數必須在括號內。若省略 call 關鍵字,則也必須省略引數兩邊的括號

呼叫函式過程

通常,呼叫自行編寫的函式過程的方法和呼叫 visual basic 內部函式過程(例如 abs)的方法一樣;即在表示式中寫上它的名字。

'下面的語句都呼叫函式 todec。

print 10 * todec

x = todec

if todec = 10 then debug.print "out of range"

x = anotherfunction ( 10 * todec)

就像呼叫 sub 過程那樣,也能呼叫函式。下面的語句都呼叫同乙個函式:

call year (now)

year now

當用這種方法呼叫函式時,visual basic 放棄返回值。

呼叫其它模組中的過程

在工程中的任何地方都能呼叫其它模組中的公用過程。可能需要指定這樣的模組,它包含正在呼叫的過程。呼叫其它模組中的過程的各種技巧,取決於該過程是在窗體模組中、類模組中還是標準模組中。

窗體中的過程

所有窗體模組的外部呼叫必須指向包含此過程的窗體模組。如果在窗體模組 form1 包含 somesub 過程,則可使用下面的語句呼叫 form1 中的過程:

call form1.somesub(arguments)

類模組中的過程

與窗體中呼叫過程類似,在類模組中呼叫過程要呼叫與過程一致並且指向類例項的變數。例如,democlass 是類 class1 的例項:

dim democlass as new class1

democlass.somesub

但是不同於窗體的是,在引用乙個類的例項時,不能用類名作限定符。必須首先宣告類的例項為物件變數(在這個例子中是 democlass )並用變數名引用它。

標準模組中的過程

如果過程名是唯一的,則不必在呼叫時加模組名。無論是在模組內,還是在模組外呼叫,結果總會引用這個唯一過程。如果過程僅出現在乙個地方,這個過程就是唯一的。

如果兩個以上的模組都包含同名的過程,那就有必要用模組名來限定了。在同一模組內呼叫乙個公共過程就會執行該模組內的過程。例如,對於 module1 和 module2 中名為 commonname 的過程,從 module2 中呼叫 commonname 則執行 module2 中的 commonname 過程,而不是 module1 中的 commonname 過程。

從其它模組呼叫公共過程名時必須指定那個模組。例如,若在 module1 中呼叫 module2 中的 commonname 過程,要用下面的語句:

module2.commonname (arguments)

public   用於宣告對所有模組中的所有其它過程都可以使用的過程。

private  用於宣告只能在包含該宣告的模組中使用的過程。

11樓:匿名使用者

與private 相對的是public

改成下面這樣就行了,用private表示只在模組中起作用,用module1.abc也不能呼叫。

public sub abc()

'......

end sub

或者直接 sub abc(),前面啥也不要。

12樓:彩虹飲料

舉乙個比較直觀的例子

你在模組1中寫好以後函式:

public function 直角三角形斜邊(byval 直角邊1 as double,byval 直角邊2 as double)

直角三角形斜邊=sqr(直角邊1^2+直角邊2^2)end function

在你要呼叫函式的地方寫上

dim 斜邊 as double

斜邊=直角三角形斜邊(3,4)

print 斜邊

最終會列印出 5 ,說明你的函式呼叫成功了。

如果是沒有返回值的過程,其實也一樣的,就不需要定義乙個變數去接收它:

使用call+過程名 命令就可以了

比如private sub abc()

'......

end sub

使用的時候就 call abc

但是應該注意函式或過程的作用域,也就是private或public,如果其他地方沒有許可權呼叫函式,就會報錯。

vb編實現順序查詢的函式過程 呼叫此過程在有元素的陣列中

private sub form load dim b 15 as string b 3 a b 9 b b 11 c msgbox searchvalinarray b,b end sub private function searchvalinarray byref a as string,by...

vb中怎樣讓窗體不能夠拉伸,vb 窗體大小不得改變

艹,不懂就別回答,浪費表情,把mdichild false,就可以了,不最大化是maxbutton設為false,不最小化minbutton設為false,如果是正解,頂一下哦 窗體不能改變大小 borderstyle設為1 minbutton設為true。方法一 設定窗體的borderstyle ...

vb如何實現定時呼叫函式的功能,vb如何實現定時呼叫乙個函式的功能

網海1書生 private sub form load timer1.interval 60000 60秒檢測一次當前日期 timer1.enabled trueend sub private sub timer1 timer if date 2010 5 9 then 如果日期為2010 5 9則...