- 博客(26)
- 资源 (33)
- 收藏
- 关注
原创 VC++对Access数据库的操作(查询、插入、更新、删除等)
Microsoft Office Access是由微软发布的关系数据库管理系统。Access数据库常应用于小型软件系统中,比如:生产管理、销售管理、库存管理等各类企业管理软件,其最大的优点是:简单易学、使用灵活。下面我们结合实例来详细说明,在VC++ MFC中,如何使用Access数据库文件进行数据的存储,如何实现对数据库中数据的查询、插入、更新和删除等操作。(实例可在我的CSDN资源中下
2015-01-23 15:16:08
23048
原创 VC++图片控件(Picture Control)显示资源位图(BMP)、文件位图(BMP)、其它格式文件图片(JPG\PNG\BMP)的方法
在VC++ MFC编程中,我们常使用Picture Control图片控件来显示图像。下面简单归纳几种显示不同的方式:第一种、资源位图方式显示BMP图片如果要显示的是一张BMP位图,则可以采用这种方法,具体步骤如下:(1)将该BMP文件拷贝到工程的res目录下;(2)在对话框中添加一个Picture Control控件,例如:ID为IDC_STATIC1,Type设为Bitmap;
2015-01-08 17:08:19
13643
1
原创 VC++对话框(CDialog)添加背景图片
在对话框(CDialog)程序中,为了让程序看上去漂亮一些,我们可以为对话框添加一个好看的背景图片,要想完成这个目标,可以利用afx_msg BOOLOnEraseBkgnd (CDC* pDC) 这个函数。下面结合实例说明(完整实例可在我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/8337225):(1)找来一张合适的B
2015-01-07 16:06:05
4824
原创 VC++对话框(CDialog)的全屏显示及控件居中显示
在编写一些软件时,我们会比较偏向于比较简洁、清新的用户界面,同时为了避免其它程序或者桌面等影响使用者的注意力等,我们通常习惯将软件界面全屏,布满整个显示屏幕,与此同时,我们也将对界面中的控件位置进行相应的调整,让它们按屏幕的大小和其在对话框中的相对位置,居中显示。下面结合实例说明(完整实例可在我的CSDN资源中下载:http://download.csdn.net/detail/margin1
2015-01-07 15:48:43
4450
原创 VC++编写DLL导出函数及其调用方法
DLL (Dynamic Link Library)动态链接库,是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件,其优点主要有:1. 有助于节省内存;2. 有助于资源共享;3. 不需编译的软件系统升级;4. 支持多语言程序。当然,有的时候我们也可以将一些核心的或者不愿意公开提供的函数编写为DLL,从而起到隐藏和保护的作用。下面结合实例详细说明在Visual Studio
2015-01-07 14:51:41
10167
2
原创 VC++中的计时器及多媒体高精度计时器
Windows计时器是一个非常有用的编程元素,而且计时器的使用非常简单,我们只需要一个时间间隔参数来调用SetTimer函数设置和启动计时器,通过WM_TIMER消息的响应函数进行计时器控制,调用KillTimer函数停止计时器。但是由于Windows是一个非实时操作系统,所以如果我们定义的时间间隔小于100ms的时候,计时器可能不会很准确。所以,对于有些时间要求比较高的情况,我们需要使用多媒
2015-01-05 14:44:45
3618
原创 VC++中单个键盘按键的响应
关于如何在VC++程序中自定义热键(或称组合键)及其响应,我在之前的知识点(Point1)中已经作了详细的介绍,那么当遇到的是单个键盘按键的响应时,而不是组合键时,我们又该怎么解决呢?我们可以采用afx_msg BOOLPreTranslateMessage(MSG* pMsg) 这个函数很方便的实现。但是在此之前,我们必须首先了解键盘按键对应的十进制ASCII码值,下面这张表是每个键盘按
2014-05-27 16:36:03
2362
2
原创 串口通信基础知识及VC++实现
串口是计算机上一种非常通用设备通信的协议。大多数计算机包含两个基于RS232的串口。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是由于串口通信是异步的,串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。而在VC++中实现串口通信也是一名VC程序员必须
2013-10-16 17:05:49
2416
2
原创 VC++中Ribbon编程架构及SDI架构多视图切换介绍
在MS Visual Studio 2008 MFC中Ribbon界面风格出现了,这种界面风格给人带来耳目一新的感觉。Ribbon界面风格出现,可以说改革了传统的菜单式界面风格,常见的应用就是MS Office 2007中的Word、Excel、PowerPoint等组件中,Ribbon不仅使得功能有组织的存放,而且可以更加方便快捷地找到各个功能。但是MS Visual Studio 2008
2013-10-16 16:24:12
3596
原创 VC++中窗口过程函数及其消息发送、响应机制介绍
在VC++中,窗口过程函数是应用程序定义的一个函数,主要功能是处理发送给窗口的消息。窗口过程函数的定义是:virtual LRESULT WindowProc( UINT message, WPARAM wParam,LPARAM lParam ); 其中,message指定消息类型,wParam和lParam指定其余的消息特定信息,内容与message参数值有关。在应用程序中窗口过程函数
2013-10-16 15:46:00
2603
原创 VC++中List Control控件的使用方法介绍
List Control控件是使用频率比较高的一个控件,用它可以很好的做为数据报表的工具,而且比较方便操作和响应,经常可以和数据库相互配合,它就像数据库中的一张表一样,来显示数据库中的数据。下面结合实例从List Control的样式及列名设置、数据设置和双击响应操作等几个方面,详细介绍List Control控件的使用方法。(完整的实例可在我的CSDN资源中下载:http://downloa
2013-10-16 15:34:57
3096
原创 VC++中结构体的定义及使用
结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,也叫结构。结构体最最主要的意义就是封装,而封装的好处就是可以再次利用。掌握了结构体的定义和使用方法,对编程具有非常重要的意义。结构体的使用能够封装一些属性来组成新的类型,能够使程序内部实现模块化,能够简化程序的结构和复杂度,能够方便我们对一组数据的成组操作。另外,结构体和前面讲述的vector的配合使用更是天衣无缝,非常方
2013-10-16 15:13:47
10687
原创 VC++中vector矢量的使用方法及随机相关
简单地说,vector矢量是一个能够存放任意类型的对象的动态数组,能够增加和压缩数据。正因为它非常的灵活和好用,所以vector的使用非常的广泛。掌握了vector的使用方法,将为你的编程带来非常巨大的方便,而且能够比较容易地解决很多比较复杂的问题。vector的操作主要包括:写入数据,读数据和清除数据。下面结合实例详细介绍vector的使用方法(完整的实例可在我的CSDN资源中下载:http
2013-10-16 15:01:33
2466
原创 VC++中截取字符串的方法
在VC++编程中,我们有时会遇到关于截取字符串的问题,对于CString类型字符串的截取VC++中有现成的函数可供使用,主要是:CStringMid (intnFirst, int nCount);和BOOL AfxExtractSubString (CString&rString, LPCTSTR lpszFullString, int iSubString, TCHAR chSep = 1
2013-05-23 11:03:16
6185
原创 VC++中一些常用的数据类型之间的相互转化
在编程的过程中,往往会涉及到一些常见的数据类型之间的相互转化,到网上一查,大家真是众说风云,让人甚是眼花缭乱,找了半天也找不到自己想要的答案。下面结合实例详细说明几种数据类型之间的转换方法(完整的实例程序可在我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/4241292):(1)CString -> intCString
2012-04-19 15:40:51
879
原创 VC++软件界面风格简单美化
为了让软件能在视觉上给用户带来一种清新的感觉,从而避免潜在的用户视觉疲劳和审美疲劳,软件一般都要经过专业的界面设计和美化。但是,我们不是也没有专业的界面设计美化人员,所以只能对软件的界面和风格进行初步的简单美化,主要是色调的搭配、图片、字体的简单美化处理等基本工作。下面结合实例,详细介绍一下之前的软件开发中所用到的两种软件界面风格简单美化的方法:(1)采用OnCtlColor函数,对软
2012-04-19 15:20:42
4850
原创 冒泡排序及退出双重循环
(1)冒泡排序排序在编程中是经常出现的需求,而最最简单、最最容易理解和掌握的排序算法当属冒泡排序算法了,冒泡排序的基本思想是:在整个排序过程中,每一趟不断地将相邻的两个数据元素进行比较,并按照“前小后大”的原则交换,即相邻地两两比较待排序数据元素,并交换不满足顺序的那些偶对,直到全部满足顺序要求为止。其中,值得注意的规律是,每一趟排序结束后都有一个待排序列中的最大值排在了此待排序列的最后一
2012-04-19 14:53:44
1667
原创 VC++按钮控件字体设置
关于按钮控件上的字体的设置,需要注意的是CFont font;变量要作为类的成员变量进行声明,而不能作为局部变量进行申明,否则字体的设置将不会产生任何效果。此外,对于按钮控件字体的设置也有不同的方法,这里主要讲述两种比较常用的设置方式:利用CreatePointFont和利用CreateFont两种。下面结合实例详细说明(完整的实例程序可在我的CSDN资源中下载:http://download
2012-04-19 14:40:32
2707
原创 VC++获取系统当前时间
在程序中,有的时候需要知道和获得当前的系统日期和时间,想要获得它们其实是比较简单的,主要有两种方法:SYSTEMTIME方式或者CTime方式。但是值得注意的一点是:如果你的电脑的时区设置是GMT+08:00的话,那么通过SYSTEMTIME方式获得系统时间比正确的时间慢8小时,所以需要加上8小时。下面结合实例详细说明(完整实例程序可在我的CSDN资源中下载:http://download.csd
2012-04-19 14:31:00
711
原创 VC++中文件读、写和其他相关操作汇总
在软件设计中,对文件系统的利用往往是必不可少的,它能帮助我们存储许多比较重要的数据,保存过程数据和备份数据,以备软件出现不可预知的偶然异常时,恢复测试数据和测试过程使用。下面结合实例来讲述文件相关的一些操作(完整的实例程序可在我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/4239839):(1)创建目录(文件夹):
2012-04-19 14:08:25
823
原创 VC++调用Matlab编写的DLL(混合编程)
有的时候,我们在VC里直接实现一个想法比较复杂或者不够理想,但是使用Matlab可以比较轻松的实现或者实现的效果比较理想,这个时候,我们可以选择混合编程的方法,将预想功能模块使用Matlab实现,在将其编译成供VC调用的DLL,从而更好地实现达到的目标。一. 基本环境:1. Microsoft Visual Studio 2008 SP1(VC++);2. MATLAB Compile
2011-10-12 15:16:37
2740
1
原创 VC++播放音频文件和音频数据的方法
在程序中,很有可能会涉及到播放一些音频文件(比如:.wav文件)和音频数据,这个问题怎么解决呢?VC++中想要播放一个音频文件(.wav)是很容易的,只要调用WIndows API函数PlaySound()就可以了,但是,如果您想播放自己在程序中产生的一段音频数据,就不是那么简单了,需要利用WIndows wave I/O API的几个函数来实现。下面结合实例来说明(完整实例可在我的CSDN资
2011-10-12 14:33:16
1578
原创 VC++读、写注册表
系统注册表中存有很多重要的信息,我们有必要掌握比较简单地写入和读取注册的表的方法。下面结合实例来说明(完整实例可在我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/3677190):1.写注册表:HKEY hSubKey;DWORD lpdw;(1)创建“项”(键):RegCreateKeyEx(HKEY_L
2011-10-12 14:15:16
1085
原创 VC++中客户区保存为BMP图片
有的时候,我们可能会需要将对话框的整个客户区存储为图片的格式,下面介绍了一种将客户区保存为BMP图片的方法。主要步骤如下:⑴ 获取当前客户区⑵ 设置位图格式及内容⑶ 存储数据为BMP图片下面结合实例来说明(完整实例请到我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/3677115):#include "WINDO
2011-10-12 13:49:58
2180
1
原创 CFileDialog文件对话框
文件对话框(主要分为“打开”和“另存为”两种),是软件中常常会运用的辅助功能模块,可以方便使用者查看或者保存一些文件或者数据。在这一个知识点中,我们主要讨论“打开”文件的使用。“打开”文件对话框的使用,一般要经过3个步骤,下面结合实例来说明(完整的实例请到我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/3526058):⑴ 定
2011-08-17 13:05:59
735
原创 VC++中自定义热键及响应
热键(或称组合键),在一个软件中有时候是很必须的。我们可以通过自定义热键和响应的方式,隐藏一些不向用户开放的功能,以达到一些简单的控制和目的。自定义一个热键,一般需要经过如下的基本步骤:⑴ 为热键赋予一个ID;⑵ 向系统注册该热键;⑶ 定义消息响应函数;⑷ 解除注册,释放资源。下面结合实例来详细说明(完整程序请到我的CSDN资源中下载:http://download.csd
2011-08-16 15:59:15
2101
VC++中结构体的定义及使用
2012-09-14
VC++中vector的使用方法及其元素随机
2012-09-14
VC++中一些常用的数据类型之间的相互转化
2012-04-20
VC++软件界面风格简单美化
2012-04-20
VC++中文件读、写和其他相关操作汇总
2012-04-19
VC++调用Matlab编写的DLL(混合编程)
2011-10-12
VC++播放音频文件和音频数据的方法
2011-10-12
VC++播放音频文件和音频数据的方法
2011-10-12
VC播放音频数据(而不是音频文件)
2011-04-13
VC调用Matlab编写的DLL的方法
2011-04-13
VC++图片控件(Picture Control)显示资源位图(BMP)、文件位图(BMP)、其它格式文件图片(JPG\PNG\BMP)实例
2015-01-08
VC++对话框(CDialog)的全屏显示及控件居中显示
2015-01-07
解决了图片闪烁和字体不可设问题的CButtonST类及实例
2014-12-08
VC++中计算及调整WAV音频文件的RMS
2014-12-08
VC++中对Access数据库操作实例
2014-12-08
VC++中单个键盘按键的响应
2013-12-03
VC++中实现串口通信(VS2008SP1)
2013-10-16
VC++ Ribbon编程架构及SDI架构多视图切换介绍(VS2008SP1)
2013-10-16
VC中截取字符串(CString)的方法
2013-05-20
VC++中实现复选下拉框CCheckComboBox
2012-10-29
VC++中窗口过程函数及其消息发送、响应机制
2012-09-14
VC++中List Control控件的使用方法介绍
2012-09-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人