探索C++
runner0592
这个作者很懒,什么都没留下…
展开
-
学习进度分析
终于下定决心学习C++了。这次的学习时间是一个月。学习目的是使我的C++能力达到能够完成毕业设计的水平。利用的开发工具是Visual C++ 6.0。所以学习过程如下:C++基础,SDK编程,MFC编程,毕业设计相关编程技术。 学习进度如下:C++基础和SDK编程并进,学时是2周左右。MFC编程在其后,学时两周左右。原创 2006-03-28 00:18:00 · 940 阅读 · 0 评论 -
创建消息循环
主窗口显示出来了,WinMain就开始处理消息了,怎么做的呢?Windows为每个正在运行的应用程序都保持一个消息队列。当你按下鼠标或者键盘时,Windows并不是把这个输入事件直接送给应用程序,而是将输入的事件先翻译成一个消息,然后把这个消息放入到这个应用程序的消息队列中去。应用程序又是怎么来接收这个消息呢?这就讲讲消息循环了。应用程序的WinMain函数通过执行一段代码从她的队列中来检转载 2006-03-28 09:28:00 · 1142 阅读 · 0 评论 -
显示和更新窗口
API函数CreateWindow创建完窗口后,要想把它显示出现,还必须调用另一个API函数ShowWindows.形式为: ShowWindow (hwnd, iCmdShow); 其第一个参数是窗口句柄,告诉ShowWindow()显示哪一个窗口,而第二个参数则告诉它如何显示这个窗口:最小化(SW_MINIMIZE),普通(SW_SHOWNORMAL),还是最大化(SW_SHOWMAXIM转载 2006-03-28 09:14:00 · 1439 阅读 · 0 评论 -
创建窗口
注册窗口类后,就可以创建窗口了,本程序中创建窗口的有关语句如下: hwnd = CreateWindow (szAppName, // window class name TEXT ("欢迎你的到来!"), // window caption转载 2006-03-28 09:01:00 · 928 阅读 · 0 评论 -
注册窗口类
注册窗口类如下:if (!RegisterClass (&wc)) { MessageBox (NULL, TEXT ("This program requires Windows NT!"), szAppName,MB_ICONERROR) ; return 0 ;}转载 2006-03-28 08:52:00 · 1117 阅读 · 0 评论 -
窗口类参数的意义
要WinMain登记窗口类,首先要填写一个WNDCLASS结构,其定义如下所示: typedef struct _WNDCLASSA { UINT style ; //窗口类风格 WNDPROC lpfnWndProc ; //指向窗口过程函数的指针 int cbClsExtra ; //窗口类附加数据转载 2006-03-28 08:47:00 · 1762 阅读 · 0 评论 -
错误unknown character '0xa1'
这个错误是一些懒人(像我)常有的。我在教程里直接Copy了下面的代码,结果就总是出错。#include "windows.h" int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { MessageBox (NULL, TEXT ("你好,原创 2006-03-28 01:50:00 · 3275 阅读 · 0 评论 -
总结创建窗口全过程
用SDK创建窗口的过程,是程序和Windows交互的过程。创建过程的每一步都要用到Windows API。第一步创建窗口类:即定义一个WNDCLASS对象,然后填充其内的变量。如:WNDCLASS wc;wc.style=CS_HREDRAW | CS_VREDRAW;wc.lpfnWndProc = WndProc;//指向窗口过程函数的指针......定义好后,进入原创 2006-03-28 15:24:00 · 1488 阅读 · 0 评论 -
处理消息
窗口过程处理消息通常以switch语句开始,对于它要处理的每一条消息ID都跟有一条case语句。大多数windows proc都有具有下面形式的内部结构:switch(uMsgId){case WM_(something)://这里此消息的处理过程return 0;case WM_(something else)://这里是此消息的处理过程ruturn 0;de转载 2006-03-28 10:48:00 · 1340 阅读 · 0 评论 -
终止应用程序
Windows是一种非剥夺式多任务操作系统。只有的应用程序交出CPU控制权后,Windows才能把控制权交给其他应用程序。当GetMessage函数找不到等待应用程序处理的消息时,自动交出控制权,Windows把CPU的控制权交给其他等待控制权的应用程序。由于每个应用程序都有一个消息循环,这种隐式交出控制权的方式保证合并各个应用程序共享控制权。一旦发往该应用程序的消息到达应用程序队列,即开始执行G转载 2006-03-28 09:43:00 · 1453 阅读 · 0 评论 -
窗口过程,窗口过程函数
如前所述,函数GetMessage负责从应用程序的消息队列中取出消息,而函数DispatchMessage()要求Windows将消息传送给在MSG结构中为窗口所指定的窗口过程。然后出台的就是这个窗口过程了,这个窗口过程的任务是干什么呢?就是最终用来处理消息的,就是消息的处理器而已,那么这个函数就是WindowProc,在Visual C++6.0中按F1启动MSDN,按下面这个路径走下来:P转载 2006-03-28 10:23:00 · 8928 阅读 · 0 评论