前半部分讲解的很基础而详细,后半部分附有大量案例。
发下目录,自己看着办吧。
目录译者序前言第一部分基础第1章概述 11.1Windows基础 11.1.1窗口类结构 21.1.2消息 21.1.3客户区和非客户区 21.1.4重叠窗口、弹出窗口和子窗口 21.1.5父窗口和宿主窗口 31.2Windows消息 31.2.1发送或寄送消息 41.2.2消息类型 41.2.3接收消息 41.2.4窗口处理函数的子类化 51.3窗口绘图 51.3.1设备环境 51.3.2绘图工具 61.3.3映射模式 61.3.4窗口视和视口视 61.3.5逻辑单位和设备单位 71.3.6绘图函数 71.3.7抖动和非抖动颜色 71.3.8设备无关位图 81.3.9元文件 81.3.10何时绘图 81.4MFC基础 81.5DeveloperStudio基础 91.6Windows和MFC总结 101.7基本类 101.8应用类 111.8.1文档视 111.8.2CWinApp(OC) 111.8.3文档模板 121.8.4线程 121.8.5CFrameWnd(OCW) 121.8.6CDocument(OC) 121.8.7CView(OCW) 131.8.8对话框应用程序 131.8.9SDI应用程序 131.8.10MDI应用程序 131.9其余用户界面类 131.9.1通用控件类 131.9.2菜单类(O) 141.9.3对话框类 151.9.4通用对话框MFC类 151.9.5控件条类(OCW) 151.9.6属性类 151.10绘图类 161.11其他MFC类 161.11.1文件类 161.11.2CArchive和序列化 161.11.3数据库类 171.11.4ODBC类 171.11.5DAO类 171.11.6数据集合类 171.11.7通信类 181.12类的消息机制 181.12.1MFC如何接收一个寄送消息 181.12.2MFC如何处理接收的消息 181.12.3UI对象 201.13小结 20第2章控制条 212.1通用控制条 212.2用API创建控制条 222.3用MFC创建控制条 242.3.1CToolBarCtrl和CStatusBarCtrl 242.3.2CToolBar和CStatusBar 242.3.3CControlBar 262.4停靠栏 272.4.1设置停靠功能 282.4.2自动改变大小和移动 302.4.3停靠栏小结 302.5浮动条 312.6MFC的高级控制条类小结 322.7视和控制条如何共享客户区 322.7.1CFrameWnd::RecalcLayout() 32 2.7.2CWnd::RepositionBars() 332.7.3CControlBar::OnSizeParent() 332.7.4CalcDynamicLayout()和CalcFixedLayout() 342.7.5CToolBar::CalcFixedLayout()和CToolBar::CalcDynamicLayout() 352.7.6工具栏布局 352.7.7CStatusBar::CalcFixedLayout() 362.7.8CDockBar::CalcFixedLayout() 362.7.9共享客户区小结 362.8对话条 372.9伸缩条 382.9.1CReBar和CReBarCtrl 392.9.2CReBar::CalcFixedLayout() 392.10命令条 392.11控制条窗口小部件风格 402.11.1工具栏按钮风格 402.11.2状态栏窗格风格 402.11.3伸缩条段风格 402.12设计自己的控制条 412.12.1重载CControlBar::CalcDynamic-Layout() 412.12.2增加WM_SIZEPARENT消息处理器 412.12.3重载CMainFrame::RecalcLayout() 412.12.4从CDockBar派生 422.13实例 422.14总结 42第3章通信 433.1进程间通信 433.1.1通信策略 433.1.2同步和异步通信 443.2窗口消息 443.2.1打开和关闭 443.2.2读与写 453.2.3回顾 453.3动态数据交换 463.3.1客户/服务器 463.3.2打开和关闭 463.3.3读和写 473.3.4其他DDE函数 483.3.5MFC支持 483.3.6回顾 493.4消息管道 493.4.1打开和关闭 493.4.2读和写 503.4.3回顾 513.5Windows套接字 513.5.1打开和关闭 523.5.2读和写 523.5.2通过Windows套接字序列化 533.5.3数据流和数据报 533.5.4回顾 543.6串行/并行通信 543.6.1打开和关闭 543.6.2读和写 543.6.3配置端口 553.6.4回顾 553.7Internet通信 563.7.1打开和关闭文件 563.7.2读文件 563.7.3打开和关闭连接 563.7.4其他Internet类 573.8通信方式小结 573.9共享数据 583.10共享内存文件 583.10.1创建和销毁 583.10.2读和写 583.10.3回顾 593.11文件映射 593.11.1打开和关闭 593.11.2读和写 603.11.3数据同步 603.11.4回顾 603.12客户/服务器 613.12.1传递调用参数 613.12.2远程过程调用 623.13小结 62第二部分用户界面实例第4章应用程序和环境 644.1实例1:在工具栏中添加静态标识符 644.2实例2:在工具栏中添加动态标识符 714.3实例3:只启动一个实例 754.4实例4:创建对话框/MDI混合式应用程序 774.5实例5:在系统托盘中添加图标 794.6实例6:主菜单状态栏中的标记 81第5章菜单、控件条和状态栏 855.1实例7:在菜单中添加图标 855.2实例8:调整命令条外观 975.3实例9:可编程工具栏 1025.4实例10:在对话框中添加工具栏、菜单和状态栏 1275.5实例11:在弹出菜单中增加位图标记 1295.6实例12:工具栏上的下拉按钮 1315.7实例13:在状态栏中添加图标 1365.8实例14:使用伸缩条 141第6章视 1436.1实例15:创建标签窗体视 1436.2实例16:创建具有通用控件的视 1506.3实例17:打印报表 1566.4实例18:打印视 1676.5实例19:绘制MDI客户视 1746.6实例20:拖放文件到视 177第7章对话框和对话条 1797.1实例21:动态改变对话框的尺寸 1797.2实例22:自定义数据交换并验证 1847.3实例23:重载通用文件对话框 1877.4实例24:重载通用颜色对话框 1907.5实例25:获得目录名 1927.6实例26:子对话框 1977.7实例27:子属性表 198第8章控件窗口 2008.1实例28:自己绘制的控件 2008.2实例29:在窗口标题中添加按钮 2048.3实例30:添加热键控件 211第9章绘图 2139.1实例31:使用非散射颜色 2139.2实例32:伸展位图 2279.3实例33:抓取屏幕 2319.4实例34:输出DIB位图文件 236第10章帮助 24310.1实例35:添加帮助菜单项 24310.2实例36:添加上下文相关帮助 24510.3实例37:添加气泡帮助 247第11章普通窗口 25411.1实例38:创建普通窗口 25411.2实例39:创建短调用形式窗口类 25611.3实例40:创建长调用形式窗口类 258第12章特定的应用程序 26112.1实例41:创建简单的文本编辑器 26112.2实例42:生成简单的RTF编辑器 26212.3实例43:创建资源管理器界面 26512.4实例44:创建简单的ODBC数据库编辑器 28412.5实例45:创建简单的DAO数据库编辑器 28712.6实例46:创建简单的向导 289第三部分内部处理实例第13章消息和通信 29513.1实例47:等待消息 29613.2实例48:清除消息 29713.3实例49:向其他应用程序发送消息 29813.4实例50:与其他应用程序共享数据 30013.5实例51:使用套接字与任意的应用程序通信 30113.6实例52:使用串行或并行I/O 321第14章多任务 33114.1实例53:后台处理 33114.2实例54:运行其他应用程序 33214.3实例55:改变优先级 33414.4实例56:应用程序内部的多任务工作者线程 33614.5实例57:应用程序内部的多任务—用户界面线程 33914.6实例58:向用户界面线程发送消息 34214.7实例59:线程间的数据共享 343第15章其他 34715.1实例60:创建定时器 34715.2实例61:播放声音 34915.3实例62:创建VC++宏 35015.4实例63:使用函数地址 35115.5实例64:二进制字符串 35215.6实例65:重新启动计算机 35615.7实例66:获得可用磁盘空间 35715.8实例67:闪烁窗口和文本 358第四部分附录附录A消息和重载顺序 361附录B绘图结构 385
2025/10/26 16:29:39 6.89MB MFC
1
智能家居部分代码,这个项目涉及到的知识点比较多,我做了一年才搞定了它,主要的知识点如下:Android应用开发,网络编程(tcp/ip协议)、Mysql数据库编程、阿里云c语言服务器环境的搭建、ARM嵌入式底层驱动开发、linux操作系统的移植、ARM+Linux下wifi驱动编译移植(或者有线网络也可以)、433模块驱动编译移植、红外模块驱动编译移植、红外遥控解码学习、1838红外接收头解码、1602液晶屏显示、433射频通信、语音模块、Linux系统QT界面开发、PCB板硬件设计以及51单片机编程知识。
2025/6/27 9:54:55 538B 智能家居
1
智能家居部分代码,这个项目涉及到的知识点比较多,我做了一年才搞定了它,主要的知识点如下:Android应用开发,网络编程(tcp/ip协议)、Mysql数据库编程、阿里云c语言服务器环境的搭建、ARM嵌入式底层驱动开发、linux操作系统的移植、ARM+Linux下wifi驱动编译移植(或者有线网络也可以)、433模块驱动编译移植、红外模块驱动编译移植、红外遥控解码学习、1838红外接收头解码、1602液晶屏显示、433射频通信、语音模块、Linux系统QT界面开发、PCB板硬件设计以及51单片机编程知识。
2025/1/19 21:33:09 249B 智能家居
1
雷达成像原理(Word完整版)第一章雷达基础知识51.1雷达的定义51.2雷达简史51.3电磁波51.4脉冲81.5分贝值表示方法91.6天线101.7雷达散射截面122.1傅立叶变换142.2雷达硬件组成152.2.1振荡器152.2.2波形产生152.2.3混频器162.2.4调制162.2.5发射机162.2.6波导162.2.7双工器172.2.8天线172.2.9限幅器172.2.10低噪放大器182.2.11系统噪声182.2.12解调192.2.13正交混频202.2.14A/D转换器212.3天线222.3.1天线的概述232.3.2方向性函数242.3.3天线增益272.3.4天线口面上辐射场的渐变处理282.3.5余割平方天线292.4相控阵天线302.4.1一维线阵列天线312.4.2二维相控阵33第三章外部环境对雷达系统的干扰343.1雷达散射截面(RCS)343.1.1简单目标的RCS343.1.1.1理想导体球353.1.1.2平板363.1.1.3角反射器363.1.1.4Luneburg透镜373.1.2复杂目标的RCS383.1.3计算RCS的方法383.1.4极化因素383.1.4.1极化散射矩阵383.1.4.2简单目标的极化散射矩阵393.1.4.3更一般的极化基403.2传播与杂波413.2.1雷达波在大气中的折射413.2.2地表弯曲效应423.2.3雷达波在空气中的衰减433.2.4雷达波在雨水中的衰减433.2.5雷达波在地表的反射433.2.6多路效应443.2.7表面杂波反射453.2.8降水引起的雷达反向散射463.3外部噪音46第四章:基本雷达信号处理504.1从噪声和杂波中间测回波信号504.1.1检测器特点504.1.2检测的基本理论504.1.3噪声中检测无波动目标524.1.3.1:已知相位的单脉冲的相参检测524.1.3.2单脉冲包络检测524.1.3.3n个脉冲的相参积分:524.1.3.4n个非相参脉冲的积分变换损失:534.1.4施威林情形534.1.4.2波动损失534.1.5:噪声中目标检测小结:544.1.6:次积分:无振动目标544.1.7目标554.2雷达波形554.2.1总的雷达信号554.2.2匹配滤波器564.2.3:匹配滤波器对于延迟,多谱勒平移、信号的响应,584.2.4雷达模糊函数584.2.5例1:一个单脉冲;
距离和速度分辨率604.2.6例2:线性频率调制脉冲;
脉冲压缩614.2.7例3:相关脉冲序列:在距离和速度上的分辨率和模糊度624.2.7.1单脉冲串634.2.7.2线性调频脉冲串644.2.7.3其它脉冲序列654.2.8相差处理间隔664.2.9CPI的例子,求解雷达方程664.3雷达测量精确度674.3.1单脉冲674.3.2卡尔曼绕界限674.3.2.1在频率上得卡尔曼-绕界限684.3.2.2延迟上的卡尔曼绕界限694.3.2.3角度上的卡尔曼--绕界限694.3.2.4卡尔曼-绕界限的例子。
704.3.2.5总结:71第六章成像雷达简介726.1距离—速度压缩726.2旋转目标:逆合成孔径雷达726.3逆合成孔径雷达用于大范围目标756.4点扩展函数766.5标准二维逆合成孔径雷达:小角度776.6二维逆合成孔径雷达:大角度806.7三维逆合成孔径雷达816.8波数空间与极化设计方法816.9ISAR注释826.10ISAR的其他情况836.11近场ISAR846.12变化情况未知的目标及旋转85第七章合成孔径雷达897.1SAR897.1.1SAR模型907.1.2距离和速度等值线917.1.3动态补偿917.1.4斜面或平面927.1.5SAR对脉冲重复频率的要求927.1.6距离转移937.2SAR波形及处理947.2.1快时处理947.2.1.1SAR中的线性调频(LFM)947.2.1.2非线性调频处理957.2.1.3非畸变过程967.2.1.4LFM脊态987.2.2慢时(slowtime)处理987.3SAR成像质量997.
2024/12/13 4:13:01 1.44MB 雷达 雷达成像 原理
1
基于STM8的一个项目,其中用到了时钟配置,串口,ADC,看门狗,定时器,外部中断,低功耗管理。
STM8常用的外设基本都用到了。
还有433无线模块的收发,lis3dh加速度传感器的驱动等。
是一个公司产品的项目源码,代码规范自认为还是不错的,有详细的注释。
现在这个网站越来越坑了,为了赚点积分,就分享下吧。
2024/8/24 17:01:32 8.69MB STM8 UART TIMER WWDG
1
433射频收发程序C语言(STM32),GPIO和RF都有的。
学习或者物联网开发都是非常不错的参考资源。
2024/6/25 10:15:26 4KB STM32 433 射频
1
433和315无线模块的软件编解码遥控程序示例
2024/6/21 22:56:17 1.52MB 无线遥控 解码
1
使用stc12单片机串口使用433模块进行通讯通讯距离300+测试完成附上电路图程序以及资料
2024/4/22 21:56:15 651KB 单片机 433 智能家居
1
源代码:#include#include#include#include#definePI3.1415926/*定义常量*/#defineUP0x4800/*上移↑键:修改时间*/#defineDOWN0x5000/*下移↓键:修改时间*/#defineESC0x11b/*ESC键:退出系统*/#defineTAB0xf09/*TAB键:移动光标*//*函数声明*/intkeyhandle(int,int);/*键盘按键判断,并调用相关函数处理*/inttimeupchange(int);/*处理上移按键*/inttimedownchange(int);/*处理下移按键*/intdigithour(double);/*将double型的小时数转换成int型*/intdigitmin(double);/*将double型的分钟数转换成int型*/intdigitsec(double);/*将double型的秒钟数转换成int型*/voiddigitclock(int,int,int);/*在指定位置显示时钟或分钟或秒钟数*/voiddrawcursor(int);/*绘制一个光标*/voidclearcursor(int);/*消除前一个光标*/voidclockhandle();/*时钟处理*/doubleh,m,s;/*全局变量:小时,分,秒*/doublex,x1,x2,y,y1,y2;/*全局变量:坐标值*/structtimet[1];/*定义一个time结构类型的数组*/main(){intdriver,mode=0,i,j;driver=DETECT;/*自动检测显示设备*/initgraph(&driver,&mode,"");/*初始化图形系统*/setlinestyle(0,0,3);/*设置当前画线宽度和类型:设置三点宽实线*/setbkcolor(0);/*用调色板设置当前背景颜色*/setcolor(9);/*设置当前画线颜色*/line(82,430,558,430);line(70,62,70,418);line(82,50,558,50);line(570,62,570,418);line(70,62,570,62);line(76,56,297,56);line(340,56,564,56);/*画主体框架的边直线*//*arc(intx,inty,intstangle,intendangle,intradius)*/arc(82,62,90,180,12);arc(558,62,0,90,12);setlinestyle(0,0,3);arc(82,418,180,279,12);setlinestyle(0,0,3);arc(558,418,270,360,12);/*画主体框架的边角弧线*/setcolor(15);outtextxy(300,53,"CLOCK");/*显示标题*/setcolor(7);rectangle(342,72,560,360);/*画一个矩形,作为时钟的框架*/setwritemode(0);/*规定画线的方式。
mode=0,则表示画线时将所画位置的原来信息覆盖*/setcolor(15);outtextxy(433,75,"CLOCK");/*时钟的标题*/setcolor(7);line(392,310,510,310);line(392,330,510,330);arc(392,320,90,270,10);arc(510,320,270,90,10);/*绘制电子动画时钟下的数字时钟的边框架*//*绘制数字时钟的时分秒的分隔符*/setcolor(5);for(i=431;i<=470;i+=39)for(j=317;j<=324;j+=7){setlinestyle(0,0,3);circle(i,j,1);/*以(i,y)为圆心,1为半径画圆*/}setcolor(15);line(424,315,424,325);/*在运行电子时钟前先画一个光标*//*绘制表示小时的圆点*/for(i=0,m=0,h=0;i<=11;i++,h++){x=100*sin(
2023/8/25 8:11:27 142KB c语言实现电子时钟 课程设计
1
智能产品、穿戴设备、3D打印的出现,整个IT行业又开始了新一轮的冲击,软、硬结合符合现在行业需求。
本书通过开源系统OpenWrt和Arduino,以及WiFi、NRF24I01(Zigbee/350/433/蓝牙等)无线模块,实现家居网关、电灯开关、无线插座、远程开门、窗帘开闭、红外摇控、温度调控、空气质量、烟雾火警、水滴检测、安防报警、WiFi摄像头、语音控制、Android客户端、3D打印产品的实战演示,任何个人、公司、机构都可以进行二次开发
2023/8/20 16:34:51 37.52MB OpenWRT Arduino
1
共 19 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡