| 发表于:2007-05-03 22:49:20 楼主 |
private sub form_load() dim i as integer for i = 1 to 50 combo1.additem cstr(i) next combo1.listindex = 0 tongbu = true end sub private sub label1_click() msgbox "hello " end sub private sub label3_click() dim i as integer i = combo1.listindex + 1 msgbox "已经选择了 " bianshu = i bofang end sub private sub bofang() dim i as integer dim cnn as new adodb.connection cnn.connectionstring = strpath cnn.open dim recordset as new adodb.recordset set recordset = cnn.EXECute( "select * from lesson1 ") dim field1 as adodb.field do while not recordset.eof for i = 1 to bianshu msgbox cstr(recordset!开始时间) msgbox cstr(recordset!结束时间) next recordset.movenext loop cnn.close end sub public sub chushihua() strpath = "provider=microsoft.jet.oledb.4.0; " & "data source= " & "e:\句子1\nce1.mdb; " dim con as new adodb.connection con.open strpath dim recordset as new adodb.recordset set recordset = con.EXECute( "select * from lesson1 ") dim strpath1 as string strpath1 = "e:\句子1\voice\nce1001.mp3 " dim b as long do while not recordset.eof if tongbu = false then dim i as integer i = doevents() else starttime = recordset!开始时间 endtime = recordset!结束时间 nowforjuzi = recordset!句子id label4.caption = recordset!英文 label5.caption = recordset!中文解释 dim str as string str = "play " & "e:\句子1\voice\nce1001.mp3 from " & starttime & " to " & endtime '-----------------------------------这里如果添加两个延时的东西,就会正常 mciEXECute str dim shijiancha as long shijiancha = endtime - starttime + 2 timer1.interval = shijiancha tongbu = false timer1.enabled = true tongbu = false nowforjuzi = nowforjuzi + 1 recordset.movenext end if loop end sub private sub timer1_timer() tongbu = true timer1.enabled = false end sub private sub timer2_timer() timer2.enabled = false msgbox "timer2 close " chushihua end sub ------------------------------------------------------------------------- 以上为一个小复读软件的,我写的源代码,因为使用的api不支持同步,所以用计时器来进行一下操作,可是出现了一个问题,就是在我上面注释的地方,如果添加一个对话框或者延时的,就正常,否则第2,4句话,也就是读一句,落一句!我看了一些时间也没发现出问题,麻烦高手帮忙看一下。谢谢,在线等召集中 |
|
|
|
|