当前位置: 网学 > 编程文档 > VB > 正文

VB下Add-Ins的编程

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式
的菜单项“My AddIn”,使用了cbMenu.Controls的Add方法。关于菜单条的层次关系及相应的属性及方法,可以参看VB关于外接程序的帮助或联机手册。但通过笔者的实践认为,最好的方法是使用F2打开VB的浏览器,其类之间的层次关系以及对象事件,方法,属性一目了然。

关于类Connect中的其它方面的代码,一般来说比较容易理解,这里就不叙述了。

3. 模块AddIn

模块AddIn比较简单,仅包含一个子程序:

Sub AddToINI ()

Dim ErrCode As Long

ErrCode=WritePrivateProfileString ("Add-Ins32","My AddIn.Connect","0","vbaddin.ini")

End Sub

该程序可以在立即窗口中运行,以便将关于此外接程序的信息添加到Windows目录下的vbaddin.ini文件中去,这样VB的外接程序管理器就可以认识该程序,并可将其挂接到VB的IDE环境中。该程序所做的工作很简单,只是在vbaddin.ini文件的[Add-Ins32]下添加一行My AddIn.Connect=0,表明My AddIn没有挂接到IDE环境中,若My AddIn.Connect=1,则VB启动时自动挂接该程序。

4. 窗体frm AddIn

窗体frm AddIn中的代码是由用户编写的,模板仅给出了一个框架。针对我们上面提出的具体问题,我们设计了一个简单的用户界面,包括如下控件:

(1)标签Label1:Caption="All controls In SelectedForm:"

(2)列表框List1:用于显示表单中的所有控制。

(3)命令按钮fontButton (0):Caption ="&Select Font",用于将选中的窗体上所有控制的字体设为缺省字体。(注:缺省字体为宋体9号字,这种字体在中文环境不同分辨率下效果都比较好)。

(4)命令按钮fontButton (1):Caption ="&Select Font",选择该按钮后将弹出选择字体,然后程序将选中的窗体上所有控制的字体均设为用户选择的字体。

(5)命令按钮ExitButton:Caption="&Exit",用于退出此程序,实际上的工作只是隐藏了窗体frm AddIn。外接程序的真正退出还是需要外接程序管理器中删去。

(6)通用对话框CommonDialog1:用于弹出选择字体的通用对话框,便于用户从中选择所需字体。

下面是窗体代码:

Public VBInstance As vbide.VBE

Public Connect As Connect

Dim mcmpCurrentForm As VBComponent

 

Option Explicit

Private Sub ChangeFont (NewFontName As String,NewFontSize As Integer,NewFontBold As Boolean,NewFontltalic As Boolean)

Dim control As VBControl

On Error Resume Next

List1.Clear

Set mcmpCurrentForm =VBInstance.SelectedVBComponent

If (mcmpCurrentForm.Type<>vbext-ct-VBForm) And-

(mcmpCurrentForm.Type<>vbext-ct-UseControl) And-

(mcmpCurrentForm.Type<>vbext-ct-DocObject) And-

(mcmpCurrentForm.Type<>vbext-ct-PropPage) Then

Exit Sub

End if

 

For Each control in mcmpCurrentForm.Designer.VBControls

List.AddItem control.ControlObject.Name

control.ControlObject.FontName= NewFontName

control.ControlObject.FontSize= NewFontSize

control.ControlObject.FontBole= NewFontBole

control.ControlObject.FontItalic= NewFontItalic

Next

End Sub

 

Private Sub ExitButton-Click (Index As Integer)

Connect.Hide

End Sub

 

Private Sub FontButton-Click (Index As Integer)

Select Case Index

Case 0

ChangeFont "宋体",9,False,False

Case 1

With CommonDialog1

.Flags = cdlCFBoth

.ShowFont

ChangeFont.FontName,.FontSize,.FontBold,.FontItalic

End With

End Select

End Sub

上面的代码比较简单,关键的代码在于获取屏幕上的所有控制,在Visual Basic5.0下,与早期版本不同,它利用了VBComponent对象的Designer属性获取屏幕上的设计器,它可以是

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号