添加到最近 - 自动创建最近使用的项
自动创建最近使用菜单项,非常简单且实用。你只需要定义一个用于保存的文件,以及一个菜单按钮(类会自动创建所有项目)。
引言
这个类可以自动创建最近使用菜单项。这个类非常易于使用且非常实用。你只需要创建一个菜单按钮(使用索引 0 定义控件数组),定义一个用于保存最近使用项目的文件,并在需要时调用 AddItem
方法。该类将自动创建所有菜单按钮,删除旧按钮,使用项目名称设置按钮标题,并使用项目数据值设置按钮标签属性。你还可以设置最近使用项目的最大数量,并且当你添加已经存在的项目时,该类将删除旧项目并将新项目放在列表的开头(使其成为列表中的第一个)。
如何使用
使用这个类非常简单。你只需要将这个类添加到你的项目中,定义最近使用项目的最大数量(默认值为 5),创建一个菜单按钮(使用索引 0 定义控件数组),仅此而已。
函数 / 子程序
AddItem(ByVal str_name As String, ByVal str_data As String)
– 插入一个新的最近使用项目,名称为str_name
,值为str_data
Data(ByVal Index As Integer) As String
– 返回最近使用项目的数据(值)Name(ByVal Index As Integer) As String
– 返回最近使用项目的名称LoadFile(ByVal str_file As String) As Boolean
– 从文件加载最近使用项目;如果失败,则返回false
RemoveItem(ByVal Index As Integer)
– 删除最近使用项目SaveData(ByVal str_file As String)
– 将最近使用项目保存到文件SetMenu(ByRef objMenu As Object)
– 创建菜单项
示例(使用最近使用项目的代码)
'show tag (data of recent item), button caption is
' recent item name
Private Sub buttRecent_Click(Index As Integer)
MsgBox Me.buttRecent(Index).Tag
End Sub
'add new item to recent
Private Sub buttSave_Click()
recent.AddItem Me.txtName.Text, Me.txtVal.Text
recent.setMenu Me.buttRecent
End Sub
'load item on form load
Private Sub Form_Load()
recent.MaxCount = 5 'number of recent items to display
recent.LoadFile App.Path & "\rec.txt"
'add items to control array buttRecent,
' class will do this (remove all items,and add new)
recent.setMenu Me.buttRecent
End Sub
'save items to file on form terminate
Private Sub Form_Terminate()
recent.SaveData App.Path & "\rec.txt"
Set recent = Nothing
End Sub