最新av偷拍av偷窥av网站,在教室伦流澡到高潮h麻豆,一个人在线高清免费观看,中文字幕av无码一二三区电影,中国丰满熟妇xxxx性

您當(dāng)前的位置:JZ5U綠色下載站文章中心設(shè)計(jì)學(xué)院Photoshop → 文章內(nèi)容
  • VB 神童教程第四章第三節(jié)——?jiǎng)討B(tài)增減菜單

我們在上一節(jié)示例的基礎(chǔ)上,來制作如圖一的小程序,每點(diǎn)擊一次“增加信息”命令,菜單上會自動(dòng)增加一個(gè)“信息”菜單,每點(diǎn)擊一次“清除菜單”命令,程序自動(dòng)清除當(dāng)前信息菜單;當(dāng)菜單回復(fù)原樣,即只剩“信息”菜單時(shí),“清除菜單”無效。


圖一


一、界面設(shè)置:

在第二節(jié)最終結(jié)果的基礎(chǔ)上,創(chuàng)建如圖一的界面,需要注意的是,“信息”菜單(MenuHint)必須在前面的“索引”框中填入數(shù)字 0,如圖二:


圖二


在程序中,只要在“索引”文本中輸入了數(shù)字,就代表這個(gè)菜單成為了一個(gè)“菜單數(shù)組”,通過這個(gè)“菜單數(shù)組”可以實(shí)現(xiàn)菜單的動(dòng)態(tài)增加與清除。

二、程序代碼:

1、為“信息菜單”指定變量:

對于增加或清除菜單命令,我們可以這樣看:原始的“信息菜單”為 MenuHint(0) ,這也是索引值為 0 的意義所在;那么增加的一個(gè)信息菜單就應(yīng)該為 MenuHint(1),再增加一個(gè),就應(yīng)該為 MenuHint(2),依此類推;清除一個(gè)信息菜單也類似,如果當(dāng)前是 MenuHint(X),那么清除一個(gè)后應(yīng)該為 MenuHint(X-1),依此類推。

指定索引值為 HintNumber ,那么增加時(shí),應(yīng)該是 HintNumber = HintNumber + 1 ;清除時(shí),應(yīng)該是 HintNumber = HintNumber -1 。

2、變量的作用域:

一個(gè)變量的作用域倒底有多大?這得由變量的類型來決定。當(dāng)一個(gè)變量只在某一個(gè)過程或事件(如某個(gè)按鈕的單擊事件)中起作用,那么它就是局部變量,可以在事件中直接定義;當(dāng)一個(gè)變量可以在整個(gè)窗體內(nèi)供使用,那么它可能是窗體層變量或全局變量,凡是在這個(gè)窗體上的事件都可以對這個(gè)變量進(jìn)行引用,這種變量只能在“通用”過程中進(jìn)行“聲明”。

因?yàn)?HintNumber 既要在“增加菜單”事件中引用,又要在“清除菜單”事件中引用,所以我們將它作為窗體層變量在“通用”過程的“聲明”中對其進(jìn)行定義,如圖三:


圖三


圖三中的代碼如下:

Dim HintNumber As Integer

3、在窗體的載入事件中讓 HintNumber 為初始值 0 ,再加上原來的代碼,結(jié)果如圖四:


圖四


4、“增加信息”菜單的 Click 事件:

Private Sub MenuAdd_Click()

HintNumber = HintNumber + 1

Load MenuHint(HintNumber)

MenuHint(HintNumber).Caption = "信息" & HintNumber

End Sub

上面程序的意義在于,先計(jì)算 HintNumber + 1 并將結(jié)果賦給新的 HintNumber ,然后通過 Load 命令打開一個(gè)新菜單 MenuHint(HintNumber) ,并讓新菜單的標(biāo)題變成“信息X”,其中,X是數(shù)字,表示這是第幾個(gè)信息菜單。

5、“清除信息”菜單的 Click 事件:

Private Sub MenuClear_Click()

If HintNumber = 0 Then

Exit Sub

Else

Unload MenuHint(HintNumber)

HintNumber = HintNumber - 1

End If

End Sub

上面的代碼,先對 HintNumber 值進(jìn)行判斷,當(dāng) HintNumber 為 0 即程序的初始狀態(tài)時(shí),直接退出當(dāng)前過程(Exit Sub 是退出當(dāng)前過程的命令,切記);如果 HintNumber 不為 0 ,那么卸載索引值最高的信息菜單,即 MenuHint(HintNumber) ,然后講算 HintNumber -1 并將結(jié)果賦給新的 HintNumber ,并最后退出條件判斷。

6、“清除信息”菜單的“有效性”:

如果程序處于初始狀態(tài),即“信息菜單”的索引值為 0 ,那么“清除信息”命令無效,否則有效。由于只有先點(diǎn)擊“幫助菜單(MenuHelp)”才能彈出“清除信息菜單(MenuClear)”,所以可以在 MenuHelp 的點(diǎn)擊事件中輸入以下代碼:

Private Sub MenuHelp_Click()

If HintNumber = 0 Then

MenuClear.Enabled = False

Else

MenuClear.Enabled = True

End If

End Sub

7、測試:

按鍵盤上的 F5 鍵,對程序進(jìn)行最終的測試。

三、提醒:

本節(jié)最重要的是掌握諸如 HintNumber 這種輔助變量,它將鼠標(biāo)的點(diǎn)擊動(dòng)作用數(shù)字的形式加以詮釋,通過值的加減來完成菜單的動(dòng)態(tài)增加與清除。

這種輔助變量的使用,在 VB 中幾乎是無處不在的,如前面我們在講 For……Next……的語法時(shí)說的作為累加器的變量。

另外,從上面的例子我們可以看出, Load/Unload 不僅適用于窗體的裝入與卸載,同時(shí)還適用于菜單的裝入與卸載。


  • 作者:互聯(lián)網(wǎng)  來源:本站整理  發(fā)布時(shí)間:2005-08-21 00:27:42


------------------------------- · 相關(guān)文檔瀏覽 · --------------------------------------------------------------------- · 熱門文檔瀏覽 · -------------------------------------