windows程序设计 显示一个窗口
#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程序设计 显示一个窗口的更多相关文章
- Excel在任务栏中只显示一个窗口的解决办法
Excel在任务栏中只显示一个窗口的解决办法 以前朋友遇到过这个问题,这次自己又遇到了,习惯了以前的那种在任务栏中显示全部窗口,方便用Alt+Tab键进行切换. 如果同时打开许多Excel工作簿, ...
- windows程序设计 创建一个新的窗口
#include <windows.h> LRESULT CALLBACK myProc(HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain(H ...
- 在线程中显示一个窗口(多个UI线程)
多数耗时操作可以异步执行,推荐async/await. 但和UI相关的部分仅能在UI线程执行,这时UI线程的耗时操作,导致界面卡死,不够友好. 我们可以创建一个单独的UI线程显示一个正在加载的窗口,可 ...
- 让你的QT显示一个窗口吧
项目文件 01_QtTest.pro #------------------------------------------------- # # Project created by QtCreat ...
- windows程序设计.第一个windos程序
Windows程序设计(第5版) windows程序需要调用API. 第一个Windows程序 /*HelloMsg.c -- Displays "Hello World!" in ...
- windows程序设计 新建一个提示框程序
1.鼠标右键项目名称,添加->新建项目. 2.选择.cpp,将文件名改成.c文件.点击添加. 3.在.c文件里面输入代码. #include <windows.h> //hInsta ...
- vscode 打开新文件覆盖窗口,始终显示一个窗口
一直在使用vscode 编辑器,里面的扩展用的比较舒服,但是最近遇到一个小问题,一直也没有找好的解决办法,今天无意中把问题给解决了.具体如下 之前使用编辑器,可以同时打开多个文件,而且是多窗口展示的, ...
- js 刷新windows.open另一个窗口页面或window.open的页面如何刷新(父页面)上层页面
一.js完整代码如下: //js打开新窗口 functionopenWin() {window.open('addInfo.jsp', '_blank','width=300,height=400,t ...
- 窗口过程 - Windows程序设计(SDK)006
窗口过程 让编程改变世界 Change the world by program 内容节选: Windows 把这样一个窗口分为了客户区和非客户区,这里边白色的这一大片就是客户区,而这些标题栏.菜单栏 ...
随机推荐
- 设计模式——proxy代理模式
目录 概述 定义 角色 为什么会有代理模式? 应用场景 示例 静态代理 例子 动态代理 JDK中生成代理对象的API 代码示例: 代码示例2 Cglib代理 代码示例 AOP(AspectOrient ...
- unicode、utf8、字符串字面值
发现好多新人都不明白,或者说没有直观的感受,其实很简单. 简单的说,unicode是一种将全球文字都涵盖的字典 - 可以认为每个字符都有一个数字索引. 比如可以这样(假设):'a' 的索引是13,'我 ...
- dubbo系列二:dubbo常用功能总结
准备工作: (1)启动zookeeper作为dubbo的注册中心 (2)新建一个maven的生产者web工程dubbo-provider-web和一个maven的消费者web工程dubbo-consu ...
- openwrt官方固件怎么中继网络
关键一点,取消勾
- macOS Sierra 如何卸载.net core 版本
由于目前没有找到一个合适的办法,将本机.NET Core的版本升级到1.1,故只有先卸载再安装最新版本了. 卸载脚本链接为:https://github.com/dotnet/cli/blob/rel ...
- 抖音圈圈乐 系统搭建H5微信小游戏圈圈乐系统介绍
网红线下游戏抖音圈圈乐改造而来 一.搭建此系统需要准备如下资料: 1. 认证微信服务号 2. 微信支付商户号 3. 备案域名及云服务器 二.系统功能简介: 1. 游戏闯关 2. 每个商品闯关难度后台自 ...
- 写文件的工具类,输出有格式的文件(txt、json/csv)
import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io. ...
- PHP连接MySQL数据库的三种方式(mysql、mysqli、pdo)
PHP与MySQL的连接有三种API接口,分别是:PHP的MySQL扩展 .PHP的mysqli扩展 .PHP数据对象(PDO) ,下面针对以上三种连接方式做下总结,以备在不同场景下选出最优方案. P ...
- C#获取一个数组中的最大值、最小值、平均值
C#获取一个数组中的最大值.最小值.平均值 1.给出一个数组 ,,,,,-,,,,}; 2.数组Array自带方法 本身是直接可以调用Min(),Max(),Average()方法来求出 最小值.最大 ...
- 添加ll命令
$ vim ~/.bashrcalias ll='ls -l' #加入此行 ps:加入后肯能无法当场起作用,执行该句: source ~/.bashrc