• 大小: 145KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: C/C++
  • 标签: 例题代码  

资源简介

VC++面向对象与可视化程序设计第三版课本例题源代码

资源截图

代码片段和文件信息

#include 
#include
#define DIVISIONS 5
#include 
#define Pi 3.1415926
#define R 50 //风车半径
#define NUM 3 //子窗口个数
int nMaxNum = 20; //nMaxNum记录了叶片循环一周中绘图的次数.

LRESULT CALLBACK WndProc (HWND UINT WPARAM LPARAM) ;
LRESULT CALLBACK ChildWndProc(HWND UINT WPARAM LPARAM) ;
TCHAR szChildClass[] = TEXT (“ChildWindow“) ;
int WINAPI WinMain (HINSTANCE hInstance HINSTANCE hPrevInstancePSTR szCmdLine int iCmdShow)
{
static TCHAR szAppName[] = TEXT (“Checker3“) ;
HWND hwnd ;
MSG msg ;
WNDCLASS wndclass ;
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
wndclass.lpfnWndProc = WndProc ;
wndclass.cbClsExtra = 0 ;
wndclass.cbWndExtra = 0 ;
wndclass.hInstance = hInstance ;
wndclass.hIcon = LoadIcon (NULL IDI_APPLICATION) ;
wndclass.hCursor = LoadCursor (NULL IDC_ARROW) ;
wndclass.hbrBackground = CreateSolidBrush(RGB(2552550));//(HBRUSH) GetStockobject (WHITE_BRUSH) ;
wndclass.lpszMenuName = NULL ;
wndclass.lpszClassName = szAppName ;
if (!RegisterClass (&wndclass))
{
MessageBox ( NULL TEXT (“Program requires Windows NT!“)szAppName MB_IConerror) ;
return 0 ;
}
wndclass.lpfnWndProc = ChildWndProc ;
wndclass.cbWndExtra = 2*sizeof (long) ;
wndclass.hbrBackground = (HBRUSH) GetStockobject (NULL_BRUSH) ;//设子窗口的背景为透明
wndclass.lpszClassName = szChildClass ;
RegisterClass (&wndclass) ; //注册子窗口类型
hwnd = CreateWindow (szAppName TEXT (“主窗口与子窗口“)
WS_OVERLAPPEDWINDOW
CW_USEDEFAULT CW_USEDEFAULT
CW_USEDEFAULT CW_USEDEFAULT
NULL NULL hInstance NULL) ;
ShowWindow (hwnd iCmdShow) ;
UpdateWindow (hwnd) ;
while (GetMessage (&msg NULL 0 0))
{
TranslateMessage (&msg) ;
DispatchMessage (&msg) ;
}
return msg.wParam ;
}

//主窗口消息处理函数.
LRESULT CALLBACK WndProc (HWND hwnd UINT message WPARAM wParamLPARAM lParam)
{
static HWND hwndChild[NUM] ;
static int cxBlock cyBlock;
static POINT ps;
int i;
switch (message)
{
case WM_CREATE :
for( i = 0; i < NUM; i++)
{
hwndChild[i] = CreateWindow (szChildClass NULL
WS_CHILDWINDOW | WS_VISIBLE/* | WS_SYSMENU| WS_CAPTION*/ 
0 0 0 0
hwnd (HMENU)i //子窗口的ID值
(HINSTANCE) GetWindowLong(hwnd GWL_HINSTANCE)
NULL) ;
SetWindowLong(hwndChild[i]0i); //设定窗口第一个附加信息-窗口序号
SetWindowLong(hwndChild[i]40); //设定窗口第二个附加信息-窗口风车转动次数
SetTimer(hwndChild[i]i(i+1)*300);
}
return 0 ;
case WM_SIZE : //将子窗口按合适的尺寸和位置置于主窗口中
cxBlock = LOWORD (lParam) / 2 ;
cyBlock = HIWORD (lParam) / 2 ;
for( i=0; i MoveWindow ( hwndChild[i]R+i*(2*R+20) cyBlock-R2*R 2*R TRUE) ;
return 0 ;
case WM_LBUTTONDOWN :
MessageBeep (0) ;
return 0 ;
case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd message wParam lParam) ;
}

//子窗口消息处理函数.
long WINAPI ChildWndProc(HWND hWndUINT iMessageUINT wParamLONG lParam)
{
HDC hDC; //定义设备环境句柄.
HBRUSH hBrush; //定义

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      11904  2002-10-07 20:00  p65\banana.ani

     文件       1700  2002-10-07 20:00  p65\handnesw.ani

     文件        766  2002-10-07 20:00  p65\hnodrop.cur

     文件        766  2002-10-07 20:00  p65\hnwse.cur

     文件      18722  2002-10-07 20:00  p65\horse.ani

     文件       2783  2011-04-07 16:37  p65\p65.cpp

     文件       3886  2011-04-07 16:35  p65\p65.dsp

     文件        531  2011-04-07 16:20  p65\p65.dsw

     文件      33792  2011-04-07 16:37  p65\p65.ncb

     文件      48640  2011-04-07 16:37  p65\p65.opt

     文件        861  2011-04-07 16:36  p65\p65.plg

     文件       3897  2012-02-21 19:08  p31\03_1.dsp

     文件        531  2000-02-13 23:10  p31\03_1.dsw

     文件      58368  2012-02-21 19:08  p31\03_1.ncb

     文件      48640  2012-02-21 19:08  p31\03_1.opt

     文件        872  2012-02-21 19:08  p31\03_1.plg

     文件       2652  2012-02-21 19:05  p31\p31.cpp

     文件       5197  2012-02-23 13:53  p41\p41.cpp

     文件       3882  2003-09-26 16:10  p41\p41.dsp

     文件        529  2003-09-26 16:09  p41\p41.dsw

     文件      41984  2012-02-23 14:38  p41\p41.ncb

     文件      48640  2012-02-23 14:38  p41\p41.opt

     文件       1118  2012-02-23 13:53  p41\p41.plg

     文件       5278  2012-02-23 15:56  p42\p42.cpp

     文件       3886  2012-02-23 15:56  p42\p42.dsp

     文件        531  2012-02-23 14:41  p42\p42.dsw

     文件      33792  2012-02-23 15:56  p42\p42.ncb

     文件      48640  2012-02-23 15:56  p42\p42.opt

     文件       1779  2012-02-23 15:40  p42\p42.plg

     文件       6399  2012-02-23 19:55  p43\p43.cpp

............此处省略75个文件信息

评论

共有 条评论

相关资源