一、由于你提供的代码不完整,以致不明白数组wavebuf()及变量WIDTH_、HEIGHT_、bh是怎么来的,所以出现编译程序时提示“实时错误 9.下标越界”现象也不好判断。
二、给你提供一个调试方法:
当你把上述“ myTimer.Enabled = True '启动”句用“ Call drawSpec”替代后,在此处按F9设置断点,然后按F5运行,当程序运行到断点处停下来时,看看数组wavebuf()及变量WIDTH_、HEIGHT_、bh是否已经获取完毕,如果没有,则应完善代码,使程序正确运行。
WIDTH_是在哪里赋值的?出错时,你看看他的值是多少。用Timer时,他又是多少(用debug.print)
可能是打开的音频文件太大了