使用VBIDE开发能在VB6.0IDE环境中自动拷贝工程中的Form图片的小工具

我有6-7天没有写东西了。这对时间在忙着做标题上写明的小抓图工具。写的我好辛苦,但还是开发出来了。我在此贴出来与大家共享,希望能对大家有所帮助。我这个小工具完成以下功能:当你打开一个现存的工程项目,在VBIDE环境的插件管理中添加本插件,然后它就可以将当前工程中包含的全部Form的设计时图片全部抓下来,以BMP格式存到一个指定的文件夹。这样在做界面跳转分析(画面迁移)和源代码工程分析的时候非常
摘要由CSDN通过智能技术生成

我有6-7天没有写东西了。这对时间在忙着做标题上写明的小抓图工具。写的我好辛苦,但还是开发出来了。我在此贴出来与大家共享,希望能对大家有所帮助。

我这个小工具完成以下功能:当你打开一个现存的工程项目,在VBIDE环境的插件管理中添加本插件,然后它就可以将当前工程中包含的全部Form的设计时图片全部抓下来,以BMP格式存到一个指定的文件夹。这样在做界面跳转分析(画面迁移)和源代码工程分析的时候非常有用。

开发环境:VB6.0    引用库:VBIDE

开发过程和代码:

1、建立ADDIN工程

2、编码实现功能:

核心代码如下 :  

Private Sub SaveCurrentProject()
        '进行必要的程序初始化
        InitProgram

        Dim win As VBIDE.Window
        For Each win In VBInstance.Windows
        '<<<<<<<<<<>>>>>>>>改变关掉所有的窗体考虑到性能问题
            'If Not (win.Type = vbext_wt_Designer) Then
                win.Close   '不是设计和代码窗体的全部关闭 虽然关闭了窗体,但没有从Windows中Remove
            'End If
        Next
       
        '先打开所有的窗体
         Dim eComponent As VBIDE.VBComponent
         For Each eComponent In VBInstance.ActiveVBProject.VBComponents
            If eComponent.Type = vbext_ct_VBForm Then
                eComponent.Activate
                Call keybd_event(vbKeyReturn, 1, 0, 0) '虚拟键 这里的SCAN取了1,不行的话换0
            End If
        Next
       
        Dim everyComponent As VBComponent
        '遍历所有的Components对象,如果是VBForm就处理,打印图片保存
        For Each everyComponent In VBInstance.ActiveVBProject.VBComponents
            If everyComponent.Type = vbext_ct_VBForm Then
                '打开当前处理的窗体
                Dim designWin As VBIDE.Window
                Set designWin = everyComponent.DesignerWindow
                designWin.Visible = True
                '可以加耶可以不加
                designWin.SetFocus

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值