
Windows 程序设计
aaa-bbb-ccc
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第6章 键盘
1、Windows 程序怎样获得键盘输入:键盘输入已消息的形式传递给程序的Windows 窗口过程。 2、Windows 默认窗口过程:DefWindowProc。 3、一些键盘消息交付给DefWindowProc,最终转换成某种具体消息传递给窗口过程。 4、所以的窗口共享键盘,当键盘上按下一个键,只有一个窗口过程能接收到该消息。MSG结构中包含窗口句柄HWND,在消息循环中,Dispatc原创 2015-10-20 11:19:45 · 300 阅读 · 0 评论 -
第11章 对话框
对话框:模态对话框和非模态对话框 创建对话框: DialogBox(hInstance, lpTemplate, hWndParent, lpDialogFunc)原创 2015-10-30 16:11:10 · 251 阅读 · 0 评论 -
第23章 尝试互联网
一、任何使用windows套接API的Windows程序调用的第一个函数 iError = WSAStartup( wVersion, &WWSADATA); 二、socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); 三、WSAAsyncSelect:用于避免互联网反应缓慢而死等在那里。 三、网络上传输的数值遵从大字节序(big-endian),即高字节在原创 2015-10-31 08:48:07 · 250 阅读 · 0 评论 -
第19章 多文档界面
在Windows中,多文档界面(MDI)是针对处理文档的应用程序的一套规范。 1、MDI框架里面的文档时没有自己菜单的,主窗口上的菜单会应用于这些子菜单。 2、MDI框架里面的文档只能有一个活动窗口,它会排在其他文档窗口的上面 3、MDI文档窗口最小化后,变成位于工作区底部的一个带图标的小标题栏,最大化后文档窗口的标题栏会小时,文件名将附加在其主窗口标题栏的应用程序名之后,它的系统菜单图标会原创 2015-10-29 11:03:23 · 476 阅读 · 0 评论 -
第13章 使用打印机
文档的真正打印不是应用程序的责任,是后台打印处理程序的责任 一、打印机专用函数 1、StartDoc, 2、EndDoc 3、,StartPage; 4、EndPage 它们负责把打印机的输出组织成不同打印页。GDI函数把文字和图形输出现在在这些页面上,如同显示在屏幕一样。 二、打印相关模块:GDI模块,打印机设备驱动程序库模块,Windows后台打印处理程序(print原创 2015-10-27 09:56:38 · 906 阅读 · 0 评论 -
第12章 剪贴板
剪切板的意义:把数据从程序自身传入和传出。 一、使用剪切板几项原则 1、在处理单个消息的过程中使用OpenClipboard 和 CloseClipboard,避免不必要的长期打开剪切板 2、不要把一个锁定的内存句柄传递给剪切板 3、CF_TEXT|CF_UNICODETEXT调用SetClipBoardData之后,不要继续使用该内存 4、CF_BITMAP ,程序把位图传递给原创 2015-10-26 17:30:39 · 401 阅读 · 0 评论 -
第3章 窗口和消息
1、窗口注册:必须绑定窗口过程(该过程被Windows操作系统本身调用,如果需要需要调用自身的窗口过程,使用SendMessage)。 2、最小化恢复到正常尺寸,微软的策略是宣布整个客户区域无效,窗口获取一条WM_PAINT消息。 3、GetMessage 获取到WM_QUIT,那么返回0,退出消息循环。 4、队列消息(post)和非队列消息(send) 1~ 在窗口过程处理某原创 2015-10-23 10:26:37 · 279 阅读 · 0 评论 -
第5章 绘图基础
1、GDI :Graphics Device Inter,图形设备接口。 2、GDI是通用接口,调用显示设备的驱动接口 3、GDI的主要目的就是支持与设备无关的图形;;位图有与设备有关位图和与设备无关位图。原创 2015-10-21 17:48:34 · 295 阅读 · 0 评论 -
第8章 计时器
1、计时器不是异步的,虽然计时器是基于硬件计时器中断,但程序不会被中断去被迫优先处理WM_TIMER消息S。etTimer 无论是窗口消息模式还是回调模式,如果定时1秒,处理过程需要5秒,那么需要等待6秒,才能进行第2次回调 2、消息队列里面的WM_TIMER和WM_PAINT一样,并不会连续不断的产生多个WM_TIMER消息到消息队列,相反,Windows把消息队列里面WM_TIMER合并成一原创 2015-10-21 16:18:10 · 286 阅读 · 0 评论 -
第7章 鼠标
1、如果窗口过程需要DBCLICK的逻辑,那么注册窗口类(RegisterClass)时,必须设置wndclasss.style = X|CS_DBCLICK 2、非客户端的鼠标消息(WM_NCXXXX)的lParam 的代表的是屏幕位置而不是窗口位置。 3、PostQuitMessage 函数使消息队列增加一条WM_QUIT消息,窗口过程不会接收此消息,它消息循序中GetMessage返回0原创 2015-10-20 17:54:35 · 270 阅读 · 0 评论 -
第9章 子窗口控件
1、创建按钮控件 ::CreateWindow(TEXT("button"), TEXT("button 1"), WS_CHILD|WS_VISIBLE|(BS_PUSHBUTTON +i), 20,20+i*20,100,20, hWnd, NULL, ((LPCREATESTRUCT)lParam)->hInstance,原创 2015-10-23 10:45:37 · 326 阅读 · 0 评论