-
VC++ 字体处理:创建4种类型的字体
VC++ 字体处理:创建4种类型的字体,第一种方法:使用CreateFontIndirect创建字体,第二种方法:使用CreateFont创建字体;第三种方法:使用CreatePointFontIndirect创建字体;第四种方法: 使用CreatePointFont创建字体;
- 2022-03-24 01:42:11下载
- 积分:1
-
VC6 利用COM实现四则运算
VC6 利用COM实现四则运算,类似于简单的计算器,两个操作数在操作符的作用下进行运算,显示出运行结果。
可以恢复上次的操作数,编译时目录下的内容会生成在TestCOMCalculator文件夹中。
程序运行效果如界面所示。
- 2022-05-07 12:18:00下载
- 积分:1
-
VC++ 创建可以显示“最近打开”文件的功能
VC++ 创建可以显示“最近打开”文件的功能,也就是为菜单项增添历史记录的功能,让打开的文件记录显示在菜单列表中,方便用户下一次打开文件,挺人性化的一个功能。现在的word、WPS等软件,打开后,用户都可以从菜单中选择最近打开的文件,快速找到自己的文档,本VC++源码就是模拟了这一功能。运行效果请参见下边的测试截图。
- 2023-05-17 09:10:03下载
- 积分:1
-
VC++ 创建一个非模态对话框
VC++ 创建一个非模态对话框,比较一下模态对话框,与其有何异同。以下是创建对话框的代码:
void CNonModeDlgDlg::Finish()
{
m_pChoice = NULL;
GetDlgItem(IDOK)->EnableWindow();
}
void CNonModeDlgDlg::OnOK()
{
if ( m_pChoice == NULL )
{
m_pChoice = new CChoiceDlg(this);
if ( m_pChoice->Create() == TRUE )
{
GetDlgItem(IDOK)->EnableWindow(FALSE);
}
}
else
{
m_pChoice->SetActiveWindow();
}
}
- 2022-02-10 13:08:52下载
- 积分:1
-
VC6.0 使用ODBC读写Excel表格文件
本VC++源码主要演示使用ODBC数据库访问技术:通过ODBC读写Excel表格文件,若数据库表没有被创建,则将"读取"按钮和"列表"控件置为无效状态,获取主程序所在路径,获取数据库文件。
- 2022-08-21 14:44:43下载
- 积分:1
-
VC++6.0 窗口过程函数及消息发送、响应测试实例
VC++6.0 窗口过程函数及消息发送、响应测试实例,在应用程序中窗口过程函数及其消息发送、响应机制的使用,能够方便程序集中处理各类消息,使得整个程序的架构更加合理、清晰。窗口过程函数及其消息发送、响应机制的使用方法:
⑴自定义消息:
在Resource.h文件中自定义消息:#define WM_MYMSG 2000
⑵添加窗口过程函数的声明和实现体:
①在.h文件中添加窗口过程函数声明:
virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
②在.cpp文件中添加窗口过程函数实现体:
⑶发送消息的方式比较:
①this->SendMessage(WM_MYMSG,0,0);
②this->PostMessage(WM_MYMSG,0,0);
③this->SendNotifyMessage(WM_MYMSG,0,0);
这三个函数都可以将指定的消息发送到某个窗口,但是这三种消息的发送方式存在如下的区别:SendMessage立即调用窗口过程函数,而且直到窗口过程函数处理完消息后才返回。PostMessage则是将指定的消息寄送到窗口消息队列后立即返回。对于SendNotifyMessage来说,如果窗口是调用线程创建的,SendNotifyMessage为该窗口调用窗口过程函数,并且等待窗口过程函数处理完消息后才返回;如果窗口是由不同的线程创建的,SendNotifyMessage将指定的消息传给窗口过程函数后立即返回。
- 2023-03-05 04:00:03下载
- 积分:1
-
VC++ 音频编程:一款简洁实用的Mp3播放器
VC++ 音频编程:一款简洁实用的Mp3播放器源代码,只是实现基本的MP3文件播放、暂停、音量控制等功能,界面采用的传统窗体风格,核心代码在下载本源码后,可参考Mp3PlayerDlg.cpp文件,运行效果如图所示。
- 2023-08-24 23:00:04下载
- 积分:1
-
VC++ CFileException异常处理用法范例
VC++ CFileException异常处理用法范例,
catch(CFileException* e)
{
switch(e->m_cause)
{
case CFileException::fileNotFound:
{
strMessage.Format("打开文件时发生异常(try/catch):
在指定位置没有找到文件%s
",strFile);
AfxMessageBox(strMessage);
TRACE("即将删除捕获到的异常对象CFileException::fileNotFound
");
AfxMessageBox("即将删除捕获到的异常对象CFileException::fileNotFound");
//删除异常对象
e->Delete();
TRACE("成功删除捕获到的异常对象CFileException::fileNotFound
");
AfxMessageBox("成功删除捕获到的异常对象CFileException::fileNotFound");
break;
}
case CFileException::invalidFile:
{
strMessage.Format("打开文件时发生异常(try/catch):
文件%无效
",strFile);
AfxMessageBox(strMessage);
TRACE("即将删除捕获到的异常对象CFileException::invalidFile
");
AfxMessageBox("即将删除捕获到的异常对象CFileException::invalidFile");
//删除异常对象
e->Delete();
TRACE("成功删除捕获到的异常对象CFileException::invalidFile
");
AfxMessageBox("成功删除捕获到的异常对象CFileException::invalidFile");
break;
}
default:
break;
}
}
- 2022-01-26 02:02:12下载
- 积分:1
-
VC++ 6.0 使用消息实现线程通信
线程通信:使用消息实现线程通信,一个了解多线程与消息通信的例子,以下是实现的主要代码:
LRESULT CThreadCommunicationDlg::OnDisplayResult(WPARAM wParam,LPARAM lParam)
{
int nResult = (int)wParam;
SetDlgItemInt(IDC_STATIC_RESULT,nResult,FALSE);
return 0;
}
void CThreadCommunicationDlg::OnButtonCalculate()
{
m_pCalculateThread=
(CCalculateThread*)AfxBeginThread(RUNTIME_CLASS(CCalculateThread));
Sleep(200);
m_pCalculateThread->PostThreadMessage(WM_CALCULATE,m_nLastOperand,NULL);
}
完整的源代码请下载本源码包。
- 2022-02-02 07:06:27下载
- 积分:1
-
一个老式的视频播放器程序 VC++编写
VC++编写 实现的一款老式的视频播放器,视频:用Media Player组件制作的视频播放器,看上去,是调用了Windows系统自带的MediaPlayer插件而实现的,具体windows mediaPlayer播放器的功能,使用这个插件,不管是VC或是VB、Delphi,都可以快速实现这个播放器功能,不过播放器播放的格式同样受限于windows mediaPlayer播放器。
- 2023-06-27 02:50:03下载
- 积分:1