用热键实现语音提示功能

来源 :科学时代·下半月 | 被引量 : 0次 | 上传用户:yaojian42506
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】本语音提示系统使用Visual Basic编程工具,实现了只需按一下自定义功能组合键,播放相对应声音文件的语音提示的功能。它能运行在任何其它应用程序运行的界面上,完全不干扰用户的其它电脑操作。
  【关键词】 vb;热键;语音播放
  
  此程序的设计思路是程序界面设计一个维护热键和对应声音文件的对应表,程序注册所有热键,当用户在其他正常电脑业务流程时,需要语言提示时,按事先定义好的热键组合键,达到语音提示的功能。程序例子中定义了功能键Ctrl+Alt+ F1~F11 实现11条语音播放的功能。
  程序实现步骤如下:
  1. 新建一个叫“配置表.mdb”ACCESS文件,里面建一个表名称叫“对应表”,字段分别为keycode值、按键、文件名、备注,存放自定义功能键和wav声音文件的对应信息,文件放于主程序目录下。所有声音文件放于主程序目录下的wav文件夹下。
  frmWh.frm主窗体下:
  Private Sub Form_Load()
   Dim dy As Recordset
  Set dy = hydb.OpenRecordset("select * from 对应表 order by keycode值")
  dy.MoveLast
  ‘取出热键的数量
  getRownum = dy.RecordCount
  dy.MoveFirst
  ‘取出对应表中的热键keycode值和对应的声音文件名赋给数组Hy!
  Do While Not dy.EOF
  For i = 1 To getRownum
  Hy(i, 0) = NtoE(dy("keycode值"))
  Hy(i, 1) = NtoE(dy("文件名"))
  dy.MoveNext
  Next
  Loop
  dy.Close
  End Sub
  2. 语音播放:按传入的参数播放相应的wav声音文件。
  ‘声明函数
  Public Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
  ‘自定义调用声音函数Fplaysound,播放wav目录下的声音文件。
  Public Sub Fplaysound(id As Byte)
  PlaySound App.Path & "\wav\" & Hy(id, 1), ByVal 0&, SND_FILENAME Or SND_ASYNC
  End Sub
  3. 热键:使用热键可以在主程序不在当前界面上照样实现程序的功能。程序启动后注册取出的自定义热键。
  mod_hotkey.bas模块下:‘热键相关API函数声明:
  Public Declare Function RegisterHotKey Lib "user32" (ByVal hwnd As Long, _
  ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
  Public Declare Function UnregisterHotKey Lib "user32" (ByVal hwnd As Long, _
  ByVal id As Long) As Long
  Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
  (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" _(ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  Public Const WM_HOTKEY = &H312
  Public Const GWL_WNDPROC = -4
  Public Const MOD_CTRL = &H2
  Public Const MOD_ALT = &H1
  Public glWinRet As Long
  Public Function CallbackMsgs(ByVal wHwnd As Long, ByVal wmsg As Long, ByVal wp_id As Long, ByVal lp_id As Long) As Long
  If wmsg = WM_HOTKEY Then
  '调用语音播放函数,播放需要的语音提示!
  Call frmWh.Fplaysound(wp_id)
  CallbackMsgs = 1
  Exit Function
  End If
  CallbackMsgs = CallWindowProc(glWinRet, wHwnd, wmsg, wp_id, lp_id)
  End Function
  frmWh.frm窗體下:
  ‘窗体load时调用该函数,注册热键hotkey,从对应表取出的存放于热键数组Hy中获取
  Sub setHotKey()
  For i = 1 To 100
  retVal(i) = False
  Next i
  For i = 1 To getRownum
  If Not (Hy(i, 1) = "" Or IsNull(Hy(i, 1))) Then
  '注册热键hotkey: 比如取出ctrl+alt+112 即:组合键ctrl+alt+F1
  retVal(i) = RegisterHotKey(Me.hwnd, i, MOD_CTRL + MOD_ALT, Hy(i, 0))
  If Not retVal(i) Then
  MsgBox "Can not registerthe hotkeys CTRL+ALT+" & Hy(i, 0), vbCritical
  End If
  End If
  Next i
  glWinRet = SetWindowLong(Me.hwnd, GWL_WNDPROC, AddressOfCallbackMsgs)
  End Sub
  ‘注意窗体关闭时要释放热键hotkey
  Sub RemoveHotKey()
  For i = 1 To getRownum
  If retVal(i) Then
  UnregisterHotKey Me.hwnd, i
  End If
  Next
  End Sub
  作者简介:倪盛兴,男,(1977.2-),上海人,本科,职称:中级,研究方向:医院HIS系统的软件应用和信息化发展
其他文献
[摘要] 今年是我校参加乌鲁木齐市统一中考的第六年,我们又一次迎来了中考。从参加自治区组织中考到参加乌市组织的中考,我们认为中考试题从深度、广度、难度上变化较大。出题灵活、水平更高。作为我们一线教师,怎样应对中考,怎样组织学生在短时间掌握复习方法。我们老师面对着巨大挑战。我们有必要以高度的责任心和使命感组织2012年中考复习工作,根据市局以及学校统一安排,结合学生实际情况,针对新课程所提出的三维课
期刊
[摘要] 舞蹈艺术起源于民间,一开始就有广泛的群众性。群众舞蹈文化活动是一种特殊的文化现象。群众舞蹈是群众文化当中具有广泛群众基础一个重要组成部分。群众舞蹈在桂林社区文化建设中具有十分积极的意义。繁荣群众舞蹈可以促进桂林社会和谐。  [关键词] 舞蹈艺术;群众舞蹈;社区文化;文化建设    一、桂林群众舞蹈的现状与特性  群众舞蹈也可以称为社会舞蹈,“社会舞蹈活动是在一定舞蹈文化背景下,将参与者的
期刊
[摘要] 本研究探讨我国体育舞蹈教育制度的现状,对此提出建议,研究探讨这个问题,有利于完善我国体育舞蹈教育制度。  [关键词] 教育制度改革;体育舞蹈;教育现状    1.研究目的  体育舞蹈属于舞蹈的范畴,和普通舞蹈有相同的地方,但又不同于普通的舞蹈。体育舞蹈近年来在我国得到了越来越广泛的开展,在这种趋势的推动下,为应对体育舞蹈市场的挑战,在借鉴国外舞蹈教育制度的前提下,汲取国外的教育制度的成功
期刊
[摘要] 艾滋病,又称获得性免疫缺陷综合症,是由人类免疫缺陷病毒(HIV)引起的,导致机体细胞免疫功能受损,最后并发各种严重的机会性感染和肿瘤为特征的致命性慢性传染病。  [关键词] 艾滋病;临床表现;传播途径;预防;关爱      一、什么是艾滋病  艾滋病是一种病死率很高的严重传染病,它的医学全称是“获得性免疫缺陷综合症”这个命名表达了三个定义:第一,获得性:表示在病因方面是后天获得而不是先天
期刊
[摘要] 夏天敏和严歌苓都是近几年来关注度较高的作家,两人在文学创作上都经历了漫长的积累和磨练,都致力于关注“社会底层”的写作,依靠长期不懈的努力而进入文坛的核心。但由于两人生活环境和人生阅历的不同,使笔下的人物形象风格迥异。本文试图从“底层人物”写作、和小说叙述方式两个方面比较夏天敏与严歌苓小说的异同。  [关键词] 夏天敏 ;严歌苓 ;比较阅读    在现今的文坛上,我们能看到有为数不多的但始
期刊
【摘要】低温热水地板辐射采暖技术是一项新兴采暖技术,由于其具有节能环保、健康舒适、简便耐用等优越性,近几年得到广泛的认可和应用。地板采暖系统每个运行环路都带有控制阀,每个房间可以根据需要随意调节室内温度,满足不同人的感受,不再为传统暖气片采暖的高热干燥而烦躁不安影响生活工作,在舒适的环境中永远保持健康的心情,同时,避免高热现象的出现,从而最大限度的节省了能源的开支。   【关键词】地板辐射采暖;节
期刊
【摘要】利用数字视频技术对视频、音频、图像、动画、文字等进行处理,使之有机结合在一起应用于教学的信息载体。它突破了文字的限制,以更加自然、逼真的方式展示视听世界,对改善人机交互能力和知识表达能力起到了重要作用。  【关键词】远程教育;数字视频技术;硬件设备;教学操作      利用数字视频技术对视频材料进行编辑制作和加工处理,是多媒体课件开发中的重要一环。  1数字视频的特殊设备需求  在综合运用
期刊
【摘要】本文分析了广东红海湾发电有限公司锅炉爆管现象作了详细的分析,指出了事故原因,并针对原因阐述了一些措施。  【关键词】超临界;爆管;泄露    锅炉事故中,受热面爆管事故占到所有事故的70%以上,造成设备及人身伤亡事故,危害也很严重。广东红海湾发电有限公司2008年8月13日下午3时许,锅炉负荷600MW,此时锅炉补给水量增大,现场检查确认炉顶大罩有明显蒸汽往外冒,同时异音明显,滑参数停炉。
期刊
【摘要】加快热计量收费的改革进程对节约能源都具有重要意义,我国对热量表的需求量大,研制开发低成本、符合国际标准的热量表是大势所趋。本文介绍两种常见的热量计量仪表。  【关键词】热量计量;热量表;热量分配表    按照国家节能法的要求,生活用能必须计量向用户收费。这是适应市场经济要求的一项重大改革,是供热企业改变运行机制的重要举措,是促进建筑节能工作的一项根本措施。我们只有遵循市场经济规律,把热作为
期刊
【摘要】计算机实验室中,大批量的计算机长时间使用引起设备损耗,或因使用不当意外受损,极易出现各种故障。快速准确地排除故障,保证实验室的正常使用,是实验室管理人员的必备技能。  【关键词】实验室;故障;技能    1常见故障  计算机的各硬件故障常常导致重启、死机、蓝屏、黑屏、无法启动等现象,按照可维护程度可以将故障分为可修复性故障与不可修复性故障。  可修复性故障是指,各硬件设备完好,但由于受硬件
期刊