vb中Load事件和Activate事件區別(結合例子)

2022-03-17 02:59:09 字數 4339 閱讀 1189

1樓:自由落體的牛頓

load事件:在一個窗體被裝載時發生。當使用 load 語句啟動應用程式,或引用未裝載的窗體屬性或控制元件時,此事件發生。

通常,load 事件過程用來包含一個窗體的啟動**。load 事件是在 intialize 事件之後發生。

例如,指定控制元件預設設定值,指明將要裝入 combobox 或 listbox 控制元件的內容,以及初始窗體級變數等。

activate :當一個物件成為活動視窗時發生。一個物件可以通過諸如單擊它,或使用**中的 show 或 setfocus 方法之類的使用者操作而變成活動的。

activate 事件僅當一個物件可見時才發生。例如,除非使用 show 方法或將窗體的 visible 屬性設定為 true,否則,一個用 load 語句載入的窗體是不可見的。activate 事件僅當焦點在一個應用程式內移動時才發生。

在另一個應用程式中將焦點移向或移離一個物件時,不會觸發任何一個事件。activate 事件在 gotfocus 事件之前發生,lostfocus 事件在 deactivate 事件之前發生。

2樓:梅信望鵑

1.load

是form載入執行

2.activate

是form觸發執行,

從英文的意思裡就能明白。

解釋:load

限於載入form時執行

activate

是如果你觸發該form就執行!!比如你前面已經開啟form1執行一次activate,當你隱藏視窗(me.hide)時,後面如果用到

form1.show

就還會執行activate。load就只執行一次(除非解除安裝視窗再載入)。

3樓:

print要在load之後才有效。所以,你把print寫在load裡面是沒用的!而activate是在load之後執行,所以print寫在activate可以達到目的

4樓:遠風的夢想家

private sub form_load()me.show'加上這個就可以了

dim i%

for i = 10 to 1 step -1print i

next i

end sub

在視窗未顯示的時候,你的所有輸出都無效,除非你對視窗設定了autoredraw屬性=true

5樓:瑞安阿芳

樓主:這個問題的實質其實不是load 與 activate的問題,

窗體的顯示過程中,若還沒載入,則先要載入,這會觸發load事件,如果載入完畢,從不顯示狀態到顯示狀態時,要觸發activate.

所以load事件時,窗體還是不可見的,print上去的東西會馬上沒掉。

activate事件時,窗體已顯示,print上去的東西還可以看到。但時,如果你將視窗最小化(或被其它視窗遮住)後還原,上面的東西又會不見了。

因此,問題的關鍵不在於load事件和activate事件,而是窗體print出來的東西是否維持住(用vb的話說:一個永續性的點陣圖輸出),你可以設定窗體的autoredraw屬性為true,這樣print出來的東西就不會消失,不論在哪個事件裡寫上面的**,都會顯示。

vb當中,activate有load什麼區別?

6樓:匿名使用者

form_activate發生在form_load之前,當一個物件成為活動視窗時發生。舉個例子,你開啟form1,此是就會先執行form_activate裡面的程式,接著執行form_load裡面的程式。然後你又開啟form2(form1不關閉),當你滑鼠在點到form1的時候,這個時候又會執行form_activate裡面的程式,但不會執行form_load。

form_load 發生在form_activate之後,窗體載入的時候,且只發生一次。

7樓:

form_load發生在form_activate之前,在視窗裝載到記憶體時會啟用form_load事件,視窗顯示過後,該視窗成為活動視窗時啟用form_activate

這兩個事件都是自動執行的,不需要人工啟用

在這兩個事件之間,如果有_init事件,先執行_load之後,接著執行_init, 而後才是_activate

執行_load 和_init的時候,都不會顯示視窗,執行_activate的時候,如果有要求顯示視窗,就會顯示

8樓:匿名使用者

沒有積分,怎麼回答。

form.load事件和form.activate,在vb裡有什麼區別?

9樓:一念春風十里不如你

1.load 是form載入執行

2.activate 是form觸發執行,從英文的意思裡就能明白。

解釋:load 限於載入form時執行

activate 是如果你觸發該form就執行!!比如你前面已經開啟form1執行一次activate,當你隱藏視窗(me.hide)時,後面如果用到 form1.

show 就還會執行activate。load就只執行一次(除非解除安裝視窗再載入)。

10樓:隨風碎波

我是覺得後者叫啟用,可以觸發類似單擊事件裡的一些具體操作,如設定焦點、列印字元等 。

而這些操作在載入事件裡均不可完成

11樓:甲甲蟲

form_load,發生在裝載窗體物件的時候

form_activate發生在窗體得到焦點的時候

他們觸發的時機完全不同,一個窗體,正常情況下,在其生存期內,form_load只會發生一次,而form_activate可能會發生無數次。

12樓:

是不是一個activate發生在load之前啊???

呵呵,先留下腳印,等以後在看正確的

13樓:讓翠柏商雯

當窗體要顯示時,先load再activate,load只會發生一次,窗體顯示後就不在發生了.activate是多次發生的,每當窗體被啟用時就發生activate

unload與之無關

vb中activate()是什麼事件

14樓:匿名使用者

windows作業系統中的視窗分前後,把一個本來不處於最頂層的視窗置於最頂層之後,它就發生了active()事件

15樓:匿名使用者

load使窗體載入時的事件,而activate是窗體被選為活動窗體時(即焦點在窗體上)的事件

例如:一個工程裡有form1和form2,在form1中輸入如下**:

private sub form_load()

form2.show

end sub

在form2中輸入如下**:

private sub form_activate()

print "123456789"

end sub

此時,執行時,焦點在form1上,所以雖然兩個窗體都同時顯現出來,但form2窗體並沒有文字

等到單擊form2(單擊窗體上或標題欄均可)時,form2上即會出現123456789的字樣。

如果把form2中的事件換成load事件,那麼,在開始執行時,form2上會直接出現123456789的字樣。

vb中的activate事件和vb.net中的activated事件的區別

16樓:圖杭科技

activated最好放棄。有細化的,比方用getfoucou

vb中的activate事件

17樓:匿名使用者

form-load() 是窗體載入事件,但是它還並沒有顯示出來 print肯定看不到了.

form-activate 是窗體啟用事件,print當然就可以看到了.

當然了,如果你在form-load()事件裡也是有辦法顯示出print的.只要先執行一個讓窗體顯示的命令 然後在print 即可.o(∩_∩)o...

private sub form_load()

me.show

print "welcome to use visual basic!! 可以看到我.呵呵"

end sub

18樓:匿名使用者

private sub form_load()show

print "welcome to use visual basic!! "

end sub

19樓:

load的時候介面都沒出來怎麼列印?

activate是等到窗體出現之後在執行

VB中的物件屬性事件和方法是什麼意思,和

這些copy 概念是生活中的抽象表現,和生活中不是完全一樣.事件是指 你在軟體設計中,如滑鼠單擊或者滑鼠劃過你所希望你的程式會出現什麼事件,如彈窗,說明等等事件 方法 是函式另一種名稱,其實就是自己定義的一個函式 方法 而屬性是指自己在一個類內定義的一個變數.物件是現實生活中一種同類物質的一種抽象....

vb中I和S是什麼意思,vb中是什麼意思

s 0 i 2 其中s是標 bai志變數,i是迴圈變數 這是判du斷n是不是質數的 zhi程式 先設daos為0,當s為1時就意味著版n有 和n以外的整數權因數了.如果s一直為0就說明n沒有整數因數.i 2是從2開始試商 當然不能從1開始試商,這個你應該明白 至於i sqr n and s 0,則是...

vb中caption和text屬性區別是什麼

都是在控制元件上顯示文字,但它們屬性不同的控制元件。在vb6中text使用者是可以修改的,caption使用者是不能修改的。在vb.net都已經向text靠攏,基本淘汰caption。vb中命令按鈕的名稱屬性和caption屬性有何不同?caption是標題bai或著名字的意du思,要與name區分...