让Linux“开口”讲英语(2)
时间:2007-02-17 来源:PHP爱好者
图1 QDialog的继承关系
Xdict的主界面是对话框类型的,包含一个单词输入编辑框input,由QLineEdit类派生而来,详细信息参见file:/usr/lib/qt/html/qlineedit.html。四个按钮reloadBtn、prevBtn、nextBtn、aboutBtn都从QAutoButton派生,详细信息参见autobt.h和autobt.cpp。两个列表框Wordlist和Showlist用来显示英语单词及其汉语解释。它们都从QListBox类派生,详细信息参见file:/usr/lib/qt/html/qlistbox.html。
在xdict.h源文件中定义了主要的功能函数:初始化函数xdict()、按任意键处理函数keyPressEvent()、单词列表框显示处理inputWord()、“关于”按钮处理aboutBtnclick()、“重装”按钮处理reloadBtnclick()、“向前”按钮处理prevBtnclick()、“向后”按钮处理nextBtnclick()、在wordlist中选中某词处理函数wordHighlight()、在wordlist中双击选中某词处理函数wordSelected()、单词输入结束处理inputReturn()。
在xdict.cpp中有这些函数的详细结构,下面仅简要分析初始化函数xdict(),如图2所示。其它函数可依此类推。
要使字典发音,只需在输入单词回车后,在显示单词汉字译文的同时调用发音函数,即在xdict.cpp中的按下回车键处理函数中添加eciSpeakText函数即可。
图2 简要分析初始化函数Xdict()
Void xdict : : inputReturn( )
{ ecispeakText ( input -> text ( ),false);
……
}
需要注意的是,重新编译,联接前要在Makefile文件中加入ibmeci50库 LIBS = -L$( QTDIR)/ lib -lqt -libmeci50 ......(-l 是命令行参数)
然后在make. 运行一下,你就可以享受标准的单词语音了!
另外,我想知道在Linux系统下如何进行文件的打包,即如何制作.rpm文件?请高手指教,我的电子邮件地址:[email protected]。
php爱好者站 http://www.phpfans.net 网页特效|网页模板
相关阅读 更多 +