请问我按《windows程序设计第五版》那个3.12程序照着他打一遍,提示我注册窗口不成功 这是为什么?我有重
你确认你建的是win32的项目吗?不应该有#include "stdafx.h"啊
晕,找以前的书找了半天, 看到了源代码了。
不过你也太大意了吧。
源代码如下
#define NUMLINES ((int)(sizeof sysmetrics/sizeof sysmetrics[0])))
struct
{
int iIndex;
TCHAR *szLanbel;
TCHAR *szDesc;
}
sysmetrics[]=
{
SM_CXSCREEN, TEXT("SM_CXSCREEN"),
TEXT("Screen width in pixels"), //注意, 这是逗号不是分号, 下同
SM_CYSCREEN, TEXT("SM_CYSCREEN"),
TEXT("Screen height in pixels"),
SM_CXVSCROLL, TEXT("SM_CXSCROLL"), //注意, 这是SM_CXVSCORLL
TEXT("Vertical scoroll width"),
SM_CYHSCROLL, TEXT("SM_CYHSCROLL"),
TEXT("Horizontal scoroll height"),
SM_CYCAPTION, TEXT("SM_CYCAPTION"),
TEXT("Caption bar height"),
SM_CXBORDER, TEXT("SM_CXBORDER"),
TEXT("Window border width"),
};
你编译一下试试吧, 最好把你的所有代码都粘上来, 那样便于调试一下啊
改为如下:
#include <windows.h>
//LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
/*wndproc函数为消息返回函数,hwnd为窗口句柄,uint原型是unsigned int表示32位值,
wparm表示无符号短整型,lparam表示有符号长整形*/
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
// 分析菜单选择:
switch (wmId)
{
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
// TODO: 在此添加任意绘图代码...
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hinstance,HINSTANCE hprevunstance,PSTR szcmdline,int iCmdShow)
{
//窗口注册
static TCHAR szap[]=TEXT("HELLOWIN");
HWND hwnd; //三大句柄的窗口句柄
MSG msg; //四大结构的消息结构
WNDCLASS wndclass; //四大结构窗口类结构wndclass
// wndclass. = sizeof(WNDCLASSEX);
wndclass.style=CS_HREDRAW|CS_VREDRAW; /*窗口结构类风格 CS_类风格选项,hredraw水平长度改变
重画窗口,vredraw垂直长度重画窗口*/
wndclass.lpfnWndProc=WndProc;//窗口句柄
wndclass.cbClsExtra=0;//指令必须在窗口结构结尾分配字节
wndclass.cbWndExtra=0;//指令必须在实例后面分配字节
wndclass.hInstance=hinstance;//注册窗口类实例列表
wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);/*加载图标,可以为空,第一个参数为空不是自定义,
IDI图标ID号applacatton*/
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);//加载鼠标光标,可以为空,IDC为鼠标图标
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//提供背景刷,获取白色图形对象
wndclass.lpszClassName=NULL;//串是菜单资源
wndclass.lpszMenuName=szap;;
if(!RegisterClass(&wndclass)) //为应用程序注册窗口类
{
MessageBox(NULL,TEXT("NO,sorry"),szap,MB_ICONERROR);
return 0;
}
//创建窗口
hwnd=CreateWindow(szap, //窗口类
TEXT("The Hello Program"), //窗口标题
WS_OVERLAPPEDWINDOW, //WS窗口风格,overlappedwindow是标准窗口风格
CW_USEDEFAULT, //CW创建窗口选项,usedefault初始位置x
CW_USEDEFAULT, //初始位置y
CW_USEDEFAULT, //初始x方向尺寸
CW_USEDEFAULT, //初始y方向尺寸
NULL, //父窗口句柄 是否在最上面
NULL, //窗口菜单句柄 是否有菜单
hinstance, //程序实例句柄
NULL); //创建参数
//显示窗口
ShowWindow(hwnd,iCmdShow); //将窗口类句柄显示,和主函数显示相同
UpdateWindow(hwnd); //指定窗口对其重绘
//消息循环
while(GetMessage(&msg,NULL,0,0)) //如果从消息队列返回是0结束
{
TranslateMessage(&msg); //翻译键盘信息
DispatchMessage(&msg); //将信息传给窗口过程
}
return msg.wParam;
}
MFCWindows应用程序设计习题解答及上机实验(第2版)目录
以下是对《MFCWindows应用程序设计习题解答及上机实验(第2版)》各章节内容的概述:第1章深入探讨Windows应用程序基础知识,包括:1.1习题解答:解答关于基础概念和原理的习题,帮助理解Windows应用程序的构建原理。 1.2上机实验:通过实践操作,巩固理论知识,提升编程技能。第2章至第5章,依次讲解Windows...
C语言学者的提问
return 0; \/\/成功返回。与int main中的int对应 } 建议你学习Charles Petzold 的《windows程序设计》最好是这本。因为Charles Petzold 是windows鼻祖。不信你去查查这牛人,而其此人讲的很通俗易懂,不过现在只有电子版的,绝版了,真可惜。或者王艳平的那本《windows程序设计》。也很不错。看...
程序设计第2版图书目录
本课程旨在提供全面的Windows程序设计教程,本书目录精心设计以确保读者能够系统地掌握所需技能。第1章:Windows程序设计基础 本章介绍Windows程序设计的基础知识,为后续章节的学习打下坚实的基础。1.1 必须了解的内容 1.1.1 Windows产品概述 深入理解Windows操作系统的特点与功能,为编写高质量的Windows程序...
Windows 程序设计:第5版(上下册)值得买吗
如果你想学windows编程,这本书是必须的
关于windows程序设计的像素一个问题
我这里恰好有这本书,我看了一下,问了一下别人,又上网找了一下资料,结果说这里翻译错了,你看看下面说的。 这是《windows程序设计》(第五版)122页的一节.读了之后,百思不得其解,甚使郁闷!设置都不变,居然得出了两种分辨效率:1.每英寸大概就为13像素;2.每英寸就为16像素?还有:10磅字既是10\/72英寸,如果...
c语言可以做什么 学c语言能干什么
1、C语言可以做嵌入式开发。2、C语言可以写漂亮的界面。以windows开发为例,你可以学习《windows程序设计(第五版)》,学完就可以写出界面来。还有一些开源库界面库,例如soui也是用C写出来的。3、C语言可以做服务器开发,现在的游戏服务器端大多都是C\/C++开发的。《windows核心编程》里面的例子就是用...
已经学完了谭浩强的《C程序设计》,接下来看哪些书比较好?
1、windows程序设计(第五版)2、MFC程序设计(第二版)、深入浅出MFC(第二版)3、COM本质论、COM原理与应用(潘爱民著)一定要按照我给的顺序学,不然一个也学不会。个人建议买深入浅出MFC,但绝版了,可以买Visual C++技术内幕也不错。本质论和原理与应用都是老潘的著作,可以选学。然后你的C++...
王艳平的《windows程序设计》推荐的编程环境中颜色到底怎么调的_百度...
首先我不懂window设计,做过网页设计,写点,看看是否有帮助。先是底色,如打粉底、ps蒙板一样,先铺好底色。然后是分类,需要设置颜色的文字、标签、边框等。如黑底黑框则白字,则不见框可见字,一种隐藏框框的方式。再次是色调,要考虑到对比。说到底是美学、图画学中色彩的应用。比较难说清的东西...
系统编程 windows 怎么学
首先必须要看的就是《WINDOWS程序设计》 这本书算是WINDOWS的入门书籍,不过不要怀疑它的难度和枯燥程度,很多人在这第一关就卡死了。如果你忍了下来,看了三遍左右,知道了WINDOWS是什么了。你可以看候捷老师译的《WINDOWS核心编程》,这本书的出名程度不比第一本差,上面有些例子学会一个足以媲美...
《Programming Windows》这本书怎样呀,有中文版的吗
两书一个是介绍Win32 API编程的,一个是介绍MFC编程的。《Programming Windows》中文版名称为《Windows 程序设计》最新是第5版 这是一本非常不错的Windows API编程的书:本书被称为Windows程序设计的“圣经”这本是尽人皆知的Win32 API编程经典,也称为“Petzold Book”,学习Win32 API编程的人几乎都...