成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

帶有歷史記錄功能的菜單

在我們?nèi)粘J褂玫囊恍┸浖?,如office系列、visual家族等,經(jīng)常會(huì)看到打開菜單中記載了上次進(jìn)行的任務(wù)。這樣的菜單可以方便用戶操作。我們也可以使用VB來實(shí)現(xiàn)這樣的功能。本文以常見的添加值不超過五

在我們?nèi)粘J褂玫囊恍┸浖?,如office系列、visual家族等,經(jīng)常會(huì)看到打開菜單中記載了上次進(jìn)行的任務(wù)。這樣的菜單可以方便用戶操作。我們也可以使用VB來實(shí)現(xiàn)這樣的功能。本文以常見的添加值不超過五個(gè)的菜單為例,演示如何實(shí)現(xiàn)該功能。這個(gè)程序不需要具備API函數(shù)調(diào)用,只需使用VB自身攜帶的函數(shù)即可。主要使用getsetting、savesetting和deletesetting函數(shù)來完成。下面是具體步驟:

1. 打開VB并選擇標(biāo)準(zhǔn)窗口

在工具菜單中選擇編輯菜單器,并進(jìn)行以下設(shè)置:

- Caption: name

- Index: visible indentation

- File: mnufile 空 true 0

- Open: mnuopen 空 true 1

- - mnudesh 空 true 1

- - mnufilename 1 false 1

- - mnufilename 2 false 1

- - mnufilename 3 false 1

- - mnufilename 4 false 1

- - mnufilename 5 false 1

- abc mnufilename 6 false 1

- 2 ----(注:一定要在最后一項(xiàng)的caption設(shè)一個(gè)虛值,這樣做的原因是為了后面在菜單項(xiàng)未滿時(shí)添加文件名做判斷,并沒有實(shí)際意義)----

2. 在窗體中加載一個(gè)對(duì)話框

對(duì)話框的name為commongdialog1。

3. 源程序如下:

在通用里聲明如下常量和函數(shù):

```vb

Const k1 "記憶菜單"

Const k2 "文件名"

Function addfilename(filename)

' 添加文件名

DIM I,G AS INTEGER

For I 5 To 1 Step -1

' 從第五項(xiàng)開始向第一項(xiàng)

If mnufilename(1).Caption < > filename And mnufilename(2).Caption < > filename And mnufilename(3).Caption < > filename And mnufilename(4).Caption < > filename And mnufilename(5).Caption < > filename Then

' 判斷所選的文件是否已存在

If mnufilename(I).Caption "" And mnufilename(I 1).Caption < > "" Then

' 此處初始化菜單,利用了虛設(shè)菜單項(xiàng)

SaveSetting k1, k2, I, filename ' 在注冊(cè)表里保存

ElseIf mnufilename(1).Caption < > "" Then

' 表明菜單已滿

DeleteSetting k1, k2, 5 ' 按先入先出規(guī)則,刪除最后一項(xiàng)

For G 4 To 1 Step -1 ' 一至四項(xiàng)依次后移

n GetSetting(k1, k2, G) ' 從注冊(cè)表里取其值

SaveSetting k1, k2, (G 1), n ' 順延到下一項(xiàng)

Next

SaveSetting k1, k2, 1, filename

Exit Function

End If

End If

Next

End Function

Function display()

' 顯現(xiàn)各項(xiàng)文件名

DIM I AS INTEGER

For I 5 To 1 Step -1

l GetSetting(k1, k2, I)

If l < > "" Then

mnufilename(I).Visible True

mnufilename(I).Caption l

Else

mnufilename(I).Visible False

mnufilename(I).Caption ""

End If

Next

End Function

Private Sub Form_Load()

Call display

End Sub

Private Sub mnuopen_Click()

DIM FILENAME

Call addfilename(filename)

Call display

End Sub

```

通過以上步驟,我們就可以實(shí)現(xiàn)帶有歷史記錄功能的菜單了。用戶可以方便地選擇之前打開過的文件,提高操作效率。

標(biāo)簽: