内容
最近想做一个象棋程序,想用Image控件来加载棋子,这样,每个格就要放一个Image控件,共要制作90个Image控件,如下图:
先别说一个一个画了,就是复制、粘贴,然后再排版也是一件非常麻烦的事情,难道是我的方法不对?因为对我来说,编程是业余爱好,且属于闭门造车型的,没人教我怎么去写这样的程序,我觉得应该这样写,所以就这样做了。能不能想个办法自动生成呢?先去看一下VB源代码吧!找到保存的文件(Form2.frm),用记事本打开查看一下,原来就是个文本文件,如下图:
看来还是有规律可循的,每个控件就是一小段代码,包含名称及相应的参数,这样就可以写一个自动生成控件的小程序了,因为VB调试比较麻烦,我就用EXCEL VBA写了,在EXCEL里建一个“启用宏的工作薄”,就叫“控件自动生成.xlsm”吧,将生成控件的信息复制到表格里,如下图:
添加两条间隔信息,因为有时左右间隔会有不同,所以还是建两个吧,下面准备写代码,按Alt+F11快捷键,打开VBE编辑器,点击菜单“插入(I)/模块(M)”添加一个编程模块。先做个简单分析,其实整个参数里可变的就3项,1是索引(Index),2是左右间隔(Left),3是上下间隔(Top),其它保持不变,然后将生成的信息放置到Sheet2表里,代码如下图:
执行代码后,到sheet2表里查看生