#include <windows.h>

HINSTANCE hinst;

LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM);

int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
static TCHAR szClassName[] = TEXT("MainWClass");
WNDCLASSEX wcx;//窗口类
HWND hwnd;//窗口句柄
MSG msg;//消息
hinst = hInstance;//应用程序实例句柄,保存为全局变量。 //填充窗口类的数据结构
wcx.cbSize = sizeof(wcx);//结构体大小
wcx.style = CS_HREDRAW | CS_VREDRAW;//样式:窗口大小改变时重绘界面
wcx.lpfnWndProc = MainWndProc;//窗口消息处理函数
wcx.cbClsExtra = ;//不使用类内存
wcx.cbWndExtra = ;//不使用窗口内存
wcx.hInstance = hInstance;//所属的应用程序实例句柄
wcx.hIcon = LoadIcon(NULL, IDI_APPLICATION);//图标:默认
wcx.hCursor = LoadCursor(NULL, IDC_ARROW);//光标:默认
wcx.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);//背景:白色
wcx.lpszMenuName = NULL;//菜单:不使用
wcx.lpszClassName = szClassName;//窗口类名
wcx.hIconSm = (HICON)LoadImage(hInstance,
MAKEINTRESOURCE(),
IMAGE_ICON,
GetSystemMetrics(SM_CXSMICON),
GetSystemMetrics(SM_CYSMICON),
LR_DEFAULTCOLOR);//小图标 //注册窗口
if(!RegisterClassEx(&wcx))
{
return ;
} //创建窗口
hwnd = CreateWindow(
szClassName,//窗口名
TEXT("BASE"),//窗口标题
WS_OVERLAPPEDWINDOW,//窗口样式
CW_USEDEFAULT,//水平位置X:默认
CW_USEDEFAULT,//垂直位置Y:默认
CW_USEDEFAULT,//宽度:默认
CW_USEDEFAULT,//高度:默认
NULL,//父窗口:无
NULL,//菜单:使用窗口类的菜单
hInstance,//应用程序实例句柄
NULL//窗口创建时数据:无
); if(!hwnd)
{
return ;
} //显示窗口
ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd); //消息循环
while(GetMessage(&msg, NULL, , ))
{
TranslateMessage(&msg);//翻译消息
DispatchMessage(&msg);//分发消息
} return ;
} LRESULT CALLBACK MainWndProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam)
{
switch(umsg)
{
case WM_DESTROY:
PostQuitMessage();
break;
}
return DefWindowProc(hwnd, umsg, wParam, lParam);
}

windows程序设计 显示一个窗口的更多相关文章

  1. Excel在任务栏中只显示一个窗口的解决办法

     Excel在任务栏中只显示一个窗口的解决办法  以前朋友遇到过这个问题,这次自己又遇到了,习惯了以前的那种在任务栏中显示全部窗口,方便用Alt+Tab键进行切换. 如果同时打开许多Excel工作簿, ...

  2. windows程序设计 创建一个新的窗口

    #include <windows.h> LRESULT CALLBACK myProc(HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain(H ...

  3. 在线程中显示一个窗口(多个UI线程)

    多数耗时操作可以异步执行,推荐async/await. 但和UI相关的部分仅能在UI线程执行,这时UI线程的耗时操作,导致界面卡死,不够友好. 我们可以创建一个单独的UI线程显示一个正在加载的窗口,可 ...

  4. 让你的QT显示一个窗口吧

    项目文件 01_QtTest.pro #------------------------------------------------- # # Project created by QtCreat ...

  5. windows程序设计.第一个windos程序

    Windows程序设计(第5版) windows程序需要调用API. 第一个Windows程序 /*HelloMsg.c -- Displays "Hello World!" in ...

  6. windows程序设计 新建一个提示框程序

    1.鼠标右键项目名称,添加->新建项目. 2.选择.cpp,将文件名改成.c文件.点击添加. 3.在.c文件里面输入代码. #include <windows.h> //hInsta ...

  7. vscode 打开新文件覆盖窗口,始终显示一个窗口

    一直在使用vscode 编辑器,里面的扩展用的比较舒服,但是最近遇到一个小问题,一直也没有找好的解决办法,今天无意中把问题给解决了.具体如下 之前使用编辑器,可以同时打开多个文件,而且是多窗口展示的, ...

  8. js 刷新windows.open另一个窗口页面或window.open的页面如何刷新(父页面)上层页面

    一.js完整代码如下: //js打开新窗口 functionopenWin() {window.open('addInfo.jsp', '_blank','width=300,height=400,t ...

  9. 窗口过程 - Windows程序设计(SDK)006

    窗口过程 让编程改变世界 Change the world by program 内容节选: Windows 把这样一个窗口分为了客户区和非客户区,这里边白色的这一大片就是客户区,而这些标题栏.菜单栏 ...

随机推荐

  1. python faker 生成随机类型字符串

    以前生成测试字符时,用random模块拼来拼去来生成随机串,如姓名,手机,身份证等,还是费一些功夫,不过有了faker模块,一切变得简单起来 基本使用: from faker import Faker ...

  2. excel函数vloopup使用方法

    邮件处理,查找null手机号码  G1=VLOOKUP(F1,A:B,2,FALSE)      H1=VLOOKUP(F1,A:F,7,FALSE)参数1是:查找列,参数2是:范围,参数3是:查找的 ...

  3. Mysql命令行tab自动补全方法

    在mysql命令行有时为了方便想要按tbl键自动补全命令,以便节约时间. 具体方法如下: 第一步:修改my.cnf vi mysql/etc/my.cnf 将下图红框的代码注释,修改成如下代码: #d ...

  4. mysql之表格的关联关系

    1.’基本模式有多对一,多对多,一对一.关联的两个基本组建为外键列和参照列 典型的多对一模式,很普遍,如部门表和员工表,即一个部门可以有多个员工. 对于多对多的模式,就需要建立中间表,将其转换为多对一 ...

  5. array_rand

    array_rand — 从数组中随机取出一个或多个单元 mixed array_rand ( array $array [, int $num = 1 ] ) 从数组中取出一个或多个随机的单元,并返 ...

  6. 腾讯地图打开地图选取位置 withMap

    https://lbs.qq.com/tool/component-picker.html withMap import React, { Component } from "react&q ...

  7. python 写入Excel

     一.安装xlrd模块: 1.mac下打开终端输入命令: pip install XlsxWriter 2.验证安装是否成功: 在mac终端输入 python  进入python环境 然后输入 imp ...

  8. 面向对象编程之Java多态

    我相信从学习计算机面向对象编程起就很多人背下了继承.封装.多态三个特性,可是多态并不是那么好理解的.通常做几道题,背下几次多态的动态绑定规律,可是依旧在一段时间后忘记了多态的存在,为什么要多态,这个程 ...

  9. Struts2 标签库详解

    Struts2标签库 包括: OGNL Struts2标签分类 控制标签 :(if, elseif,else, iterator, append, merge, generator, subset, ...

  10. Oracle课程档案,第十二天

    死锁是由于两个对象在拥有一份资源的情况下申请另一份资源, 而另一份资源恰好又是这两对象正持有的,导致两对象无法完成操作,且所持资源无法释放. 阻塞是由于资源不足引起的排队等待现象. unso:撤销 c ...