好吧 好忙 还得整windows编程 好不容易整出的窗口
#include "StdAfx.h"
#include <windows.h>
TCHAR Title[32]=TEXT("迷宫"); //窗口的标题
TCHAR WinName[32]=TEXT("Simple"); //窗口的名称
ATOM RegisterWin(HINSTANCE);
BOOL CreatWin(HINSTANCE, int);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;
RegisterWin(hInstance);
if (!CreatWin(hInstance, nCmdShow))
{
return FALSE;
}
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (int)msg.wParam;
}
ATOM RegisterWin(HINSTANCE hInstance)
{
WNDCLASSEX wc;
wc.cbSize= sizeof(WNDCLASSEX);
wc.style= CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc= (WNDPROC)WndProc;
wc.cbClsExtra= 0;
wc.cbWndExtra= 0;
wc.hInstance= hInstance;
wc.hIcon= LoadIcon(hInstance, (LPCTSTR)IDI_APPLICATION);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.lpszMenuName = NULL;
wc.lpszClassName = WinName;
wc.hIconSm = LoadIcon(wc.hInstance, (LPCTSTR)IDI_APPLICATION);
return RegisterClassEx(&wc);
}
//初始化窗口
BOOL CreatWin(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
//创建窗口
hWnd = CreateWindow( WinName,
Title,
WS_OVERLAPPEDWINDOW, //窗口式样
360,
100,
600,
480,
NULL,
NULL,
hInstance,
NULL);
if (!hWnd)
{
return FALSE;
}
ShowWindow(hWnd, nCmdShow); //显示窗口
UpdateWindow(hWnd);
//立即显示
return TRUE;
}
//窗口消息处理
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_DESTROY:
//关闭窗口
PostQuitMessage(0);
break;
default:
//发送关闭消息
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
#include "StdAfx.h"
#include <windows.h>
TCHAR Title[32]=TEXT("迷宫"); //窗口的标题
TCHAR WinName[32]=TEXT("Simple"); //窗口的名称
ATOM RegisterWin(HINSTANCE);
BOOL CreatWin(HINSTANCE, int);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;
RegisterWin(hInstance);
if (!CreatWin(hInstance, nCmdShow))
{
return FALSE;
}
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (int)msg.wParam;
}
ATOM RegisterWin(HINSTANCE hInstance)
{
WNDCLASSEX wc;
wc.cbSize= sizeof(WNDCLASSEX);
wc.style= CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc= (WNDPROC)WndProc;
wc.cbClsExtra= 0;
wc.cbWndExtra= 0;
wc.hInstance= hInstance;
wc.hIcon= LoadIcon(hInstance, (LPCTSTR)IDI_APPLICATION);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.lpszMenuName = NULL;
wc.lpszClassName = WinName;
wc.hIconSm = LoadIcon(wc.hInstance, (LPCTSTR)IDI_APPLICATION);
return RegisterClassEx(&wc);
}
//初始化窗口
BOOL CreatWin(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
//创建窗口
hWnd = CreateWindow( WinName,
Title,
WS_OVERLAPPEDWINDOW, //窗口式样
360,
100,
600,
480,
NULL,
NULL,
hInstance,
NULL);
if (!hWnd)
{
return FALSE;
}
ShowWindow(hWnd, nCmdShow); //显示窗口
UpdateWindow(hWnd);
//立即显示
return TRUE;
}
//窗口消息处理
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_DESTROY:
//关闭窗口
PostQuitMessage(0);
break;
default:
//发送关闭消息
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
分享到:
相关推荐
本示例将深入探讨如何使用VC++6.0,一个经典的C++集成开发环境,来实现基于Windows API创建一个简单的窗口程序。该程序能够运行,并展示了Windows编程的基本概念。 首先,理解Windows API是关键。它提供了创建窗口...
无边框窗口,可以拖动,可以缩放,双击可以最大化。可加上自定义图标、标题、最小最大化按钮、关闭按钮,实现自定义自绘标题栏,就可以模仿QQ聊天窗口界面或微信聊天窗口...在 Windows7 64位平台上用 DevCPP 编译通过。
Labivew 调用 Windows API 函数实现 VI 窗口置顶 LabVIEW 是一个非常流行的虚拟仪器开发平台,通过调用 Windows API 函数可以实现 VI 窗口置顶。下面我们将详细介绍如何通过 LabVIEW 调用 Windows API 函数来实现 ...
Windows API(应用程序接口)是微软操作系统...总结,Windows API创建窗口程序涉及了窗口类注册、窗口实例创建、消息处理机制等多个环节。理解并熟练掌握这些知识点是Windows编程的基础,也是构建复杂GUI应用的关键。
这个主题主要涉及如何使用C或C++编程语言,通过Windows API来构建一个基础的窗口程序。下面我们将详细探讨Windows API创建窗口程序的基本步骤、涉及的关键函数以及相关的编程概念。 1. **初始化过程**: - **...
在Windows操作系统中,开发者可以利用Windows API来控制应用程序的窗口行为,包括将窗口设置为全屏模式。这个项目就是利用C语言(同时也适用于C++)实现了仅通过Windows API实现窗口全屏的功能。以下是对相关知识点...
Windows API的核心是大量的函数,例如CreateWindow用于创建窗口,SendMessage用于在窗口之间发送消息,GetWindowText用于获取窗口的文本等。这些函数通常通过stdcall调用约定调用,参数从右到左压栈。开发者需要理解...
在Windows API中,创建窗口是构建用户界面的基本步骤。这个过程涉及到多个步骤和技术,主要使用C++编程语言来实现。本文将深入探讨如何利用Windows API建立窗口并实现在窗口上进行图形绘制。 首先,理解“API”是...
通过分析和学习这些代码,你可以更深入地理解Windows API窗口绘制的工作原理。实践这些代码可以帮助你更好地掌握Windows编程技术,尤其是自定义窗口的绘制和交互逻辑。 总之,使用Windows API模仿窗口绘制是一个...
2. **窗口管理**:Windows API提供了一系列函数来创建、管理窗口,如CreateWindowEx、ShowWindow、UpdateWindow等。理解窗口消息循环和消息处理机制是Windows编程的基础。 3. **图形设备接口(GDI)**:GDI是...
在编程领域,Windows API(应用程序接口)是微软操作系统提供给开发者的一个重要工具集,它允许程序员直接与操作系统交互,执行各种任务,如创建窗口、处理输入事件、绘图等。本实例“实例010——使用Windows API...
Windows API提供了大量的函数、结构、枚举类型和消息,使得开发者可以控制窗口、绘图、输入输出、网络通信、文件操作等各种功能。它包含了从最基本的窗口创建到复杂的系统调用的所有内容。Windows API的核心组件包括...
Windows API 是一个应用程序编程接口,提供了许多功能,可以帮助应用程序达到各种目的,如打开窗口、绘制图形、使用外围设备等。这些功能服务可以被应用程序调用,以实现特定的功能。 在 LabVIEW 中调用 Windows ...
Windows API List_windows_WindowsAPI编程_windowsapilist_这个主题主要涵盖了Windows API的详细列表和其用法说明,对于进行Windows平台开发的程序员来说,是一份极其重要的参考资料。 Windows API包含了数千个函数...
本资源"精通windowsAPI函数接口编程实例源代码.rar"显然是一个包含详细实例的压缩包,旨在帮助C++开发者深入理解和应用Windows API。 Windows API主要由以下几个部分组成: 1. **核心API**:这是Windows系统的基础...
在Windows API中,"函数"是核心部分,如CreateWindow用于创建窗口,SendMessage用于向窗口发送消息,GetProcAddress用于动态获取API函数的地址等。这些函数为开发者提供了与操作系统进行交互的手段。例如,...
Windows API涵盖了各种功能,包括窗口管理、图形绘制、文件操作、网络通信、系统调用等。例如,`CreateWindowEx`函数用于创建窗口,`SendMessage`用于在窗口之间发送消息,`DrawText`用于在窗口上绘制文本,`...
Windows API是开发Windows应用程序的基础,它提供了与操作系统交互的各种功能,包括窗口管理、图形绘制、文件操作、网络通信等多个方面。 在Windows API中,每个函数都有其特定的作用和用途。例如,...
Windows API,全称为Windows应用程序接口,是微软操作系统提供给开发者用于构建Windows应用程序的一系列函数、结构、常量和消息。这些API提供了与操作系统交互的基本功能,包括窗口管理、图形绘制、文件操作、网络...
《Windows API Code Pack详解》 Windows API Code Pack是一款由微软官方提供的开源库,主要用于扩展.NET Framework应用程序对Windows 7及更高版本操作系统特性的访问能力。这个库为开发者提供了丰富的API接口,使得...