扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:中国电子科技集团公司 来源:天极网 2007年10月19日
关键字:
CTTSCallView::CTTSCallView(): CFormView(CTTSCallView::IDD) { //{{AFX_DATA_INIT(CTTSCallView) m_Text = _T("Hello! Welcome to use this software developed by LangRui."); //}}AFX_DATA_INIT m_DLL = NULL; m_bCreated=FALSE; } |
void CTTSCallView::OnInitialUpdate() { CFormView::OnInitialUpdate(); GetParentFrame()->RecalcLayout(); ResizeParentToFit(); GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE); GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON4)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON3)->EnableWindow(FALSE); } |
void CTTSCallView::OnRead() { m_DLL=LoadLibrary("Project1.dll"); //动态加载动态连接库 void (*Create)(void); //取得DLL中的Create函数 Create=(void(*)(void))::GetProcAddress(m_DLL,"Create"); Create(); m_bCreated=TRUE; void (*Read)(char*); //取得DLL 中的Read函数 Read=(void(*)(char*))::GetProcAddress(m_DLL,"Read"); //获取编辑框内容 UpdateData(TRUE); char buf[10000]; ::strcpy(buf,m_Text); Read(buf);//朗读编辑框的内容。 GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);//“朗读”按钮不可用 GetDlgItem(IDC_BUTTON2)->EnableWindow(TRUE); //“暂停”按钮可用 GetDlgItem(IDC_BUTTON4)->EnableWindow(FALSE);//“恢复”按钮不可用 GetDlgItem(IDC_BUTTON3)->EnableWindow(TRUE); //“停止”按钮可用 } |
void CTTSCallView::OnPause() { m_DLL=LoadLibrary("Project1.dll"); void (*Pause)(); Pause=(void(*)())::GetProcAddress(m_DLL,"Pause"); BOOL (*IsSpeaking)(); //判断是否正在朗读 IsSpeaking=(BOOL(*)())::GetProcAddress(m_DLL,"IsSpeaking"); if(IsSpeaking()) { Pause(); GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON4)->EnableWindow(TRUE); GetDlgItem(IDC_BUTTON3)->EnableWindow(TRUE); } } |
void CTTSCallView::OnResume() { m_DLL=LoadLibrary("Project1.dll"); void (*Resume)(); Resume=(void(*)())::GetProcAddress(m_DLL,"Resume"); BOOL (*IsSpeaking)(); IsSpeaking=(BOOL(*)())::GetProcAddress(m_DLL,"IsSpeaking"); if(!IsSpeaking()) { Resume(); GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON2)->EnableWindow(TRUE); GetDlgItem(IDC_BUTTON4)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON3)->EnableWindow(TRUE); } } |
void CTTSCallView::OnStop() { m_DLL=LoadLibrary("Project1.dll"); void (*Stop)(); Stop=(void(*)())::GetProcAddress(m_DLL,"Stop"); Stop();//停止朗读 GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE); GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON4)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON3)->EnableWindow(FALSE); } |
void CTTSCallView::OnChangeEdit() { if(m_bCreated) { m_DLL=LoadLibrary("Project1.dll"); BOOL (*IsSpeaking)(); IsSpeaking=(BOOL(*)())::GetProcAddress(m_DLL,"IsSpeaking"); if(!IsSpeaking()) { GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE); GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON4)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON3)->EnableWindow(FALSE); } } } |
BOOL CTTSCallView::DestroyWindow() { AfxFreeLibrary(m_DLL); return CFormView::DestroyWindow(); } |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者