参考
https://www.cnblogs.com/findumars/p/3948315.html

不让调整大小
窗口风格设置,后面两个是最大最小化按钮
dwStyle^WS_THICKFRAME^WS_MAXIMIZEBOX^WS_MINIMIZEBOX

不让拖动
消息循环里添加

case WM_NCLBUTTONDOWN:
    {
        switch (wParam)
        {
        case HTCAPTION:
            return 0;
        default:
            return DefWindowProc(hWnd, message, wParam, lParam);
        }
    }
    break;

窗口居中显示
1.设置窗口位置和大小

SetWindowPos(
    hWnd: HWND; 窗口句柄
    hWndInsertAfter: HWND或者一个UNIT; 窗口的 Z 顺序
    X, Y: Integer; 位置
    cx, cy: Integer; 大小
    uFlags: UINT 选项
): BOOL;

//hWndInsertAfter 参数可选值:
HWND_TOP = 0; 在前面,能用TOP就不要用TOPMOST,TOPMOST即使是不激活状态也会挡住别的激活的窗口
HWND_BOTTOM = 1; 在后面
HWND_TOPMOST = HWND(-1); 在前面, 位于任何顶部窗口的前面
HWND_NOTOPMOST = HWND(-2); 在前面, 位于其他顶部窗口的后面

//uFlags 参数可选值:
SWP_NOSIZE = 1; 忽略cx、cy,保持大小
SWP_NOMOVE = 2; 忽略X、Y,不改变位置
SWP_NOZORDER = 4; 忽略hWndInsertAfter,保持Z顺序
SWP_NOREDRAW = 8; 不重绘
SWP_NOACTIVATE = 0x10; 不激活
SWP_FRAMECHANGED = 0x20; 强制发送WM_NCCALCSIZE消息,一般只是在改变大小时才发送此消息
SWP_SHOWWINDOW = 0x40; 显示窗口
SWP_HIDEWINDOW = 0x80; 隐藏窗口
SWP_NOCOPYBITS = 0x100; 丢弃客户区
SWP_NOOWNERZORDER = 0x200; 忽略hWndInsertAfter,不改变Z序列的所有者
SWP_NOSENDCHANGING = 0x400; 不发出WM_WINDOWPOSCHANGING消息
SWP_DRAWFRAME = SWP_FRAMECHANGED; 画边框
SWP_NOREPOSITION = SWP_NOOWNERZORDER;
SWP_DEFERERASE = 0x2000; 防止产生WM_SYNCPAINT消息
SWP_ASYNCWINDOWPOS = 0x4000; 若调用进程不拥有窗口,系统会向拥有窗口的线程发出需求

2.获取窗口位置和大小

GetWindowRect(HWND hWnd, LPRECT lpRect );//获得窗口相对屏幕的大小
GetClientRect(HWND hWnd, LPRECT lpRect );//获得窗口相对客户区的大小
GetSystemMetrics(SM_CXSCREEN);//获取屏幕大小

【转】win32窗口的大小,居中,拖动相关推荐

  1. 【最终版】PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化,添加内容窗口

    [最终版]PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化,添加内容窗口 文章目录 [最终版]PyQt5 自定义标题栏,实现无边框,最小化最大 ...

  2. PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化

    PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化 文章目录 PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变 ...

  3. WINDOWS高级窗口的客户区域拖动技术及其应用

    WINDOWS高级窗口的客户区域拖动技术及其应用 来源:http://dev.21tx.com WINDOWS应用程序窗口一般包括两种:普通窗口和常居顶层的无标题条高级窗口.前者是由WINDOWS内部 ...

  4. Windows下游戏制作(1)---win32窗口创建(2)

    写出一个窗口 之前我们简单的认识了一下win32主函数,下面我们来讨论一下如何用这个主函数作为起点来写出一个win32窗口程 序. int WINAPI WinMain(   HINSTANCEhIn ...

  5. python3-xlwt-Excel设置表格基础(字体颜色 背景颜色 设置边框 边框颜色 冻结窗口 字体大小 字体高度 字体加粗 下划线 斜体字 单元格对齐方式 自动换行 删除线 超链接 插入公式)

    文章目录 引入xlwt和创建workboos对象 初始化样式和创建设置字体,赋值给style 保存文件 自定义样式 字体颜色 背景颜色 设置边框 边框颜色 冻结窗口 字体大小 字体高度 字体加粗 下划 ...

  6. win32窗口创建之通俗易懂版

    win32应用程序的第一章 1最简单的win32窗口的创建 这里呢我把win32窗口的创建作为第一个知识分享给大家,也算我对他的一个巩固了.嘿嘿 这里我要说明的是创建这个窗口有两种方法(当然是对于萌新 ...

  7. 用javascript实现控制打开网页窗口的大小 和HTML如何关闭窗口的技巧大全

    用javascript实现控制打开网页窗口的大小 和HTML如何关闭窗口的技巧大全 打开窗口即最大化<script language="JavaScript"> < ...

  8. Win32窗口编程C++

    编译器:VC++6.0 工作区创建 1.右上角"文件"----->创建,选择"Win32 Application",输入工程名称: 2.点击"确 ...

  9. SSH工具Secure Shell Client的sitting窗口显示不全和窗口页面大小问题解决办法

    2019独角兽企业重金招聘Python工程师标准>>> 就是这个软件: 处理办法: 在百度下关键字:ssh secure shell 的 setting窗口显示不全 查到一个网页标题 ...

最新文章

  1. 从0到1:CTFer成长之路
  2. Quartz cron表达式
  3. openfire插件开发的四种方式
  4. 【有上下界网络流】【ZOJ】2314 Reactor Cooling
  5. 新概念一册电子书课本_新概念英语第二册完整版:音频+动画视频+课本图文讲解...
  6. Java的知识点9——this关键字
  7. linux驱动篇之 driver_register 过程分析(二)bus_add_driver
  8. 深入理解Kafka(2)-Producer
  9. Struts2_day01
  10. P3700-[CQOI2017]小Q的表格【分块,欧拉函数】
  11. sql 数字转换为16进制数函数
  12. Java描述设计模式(02):简单工厂模式
  13. 为5—18岁青少年提供营地教育,漫族完成百万级天使轮融资
  14. Linux中的Diff和Patch
  15. 【李宏毅机器学习】Convolutiona Neural Network 卷积神经网络(p17) 学习笔记
  16. 安装在电脑上的网络测试软件,iperf3 网络测试工具
  17. PWA 即将终结应用程序商店!
  18. java的历史_Java的历史
  19. java面试题关于servlet_关于Java servlet的面试题目
  20. 在linux系统下使用service tomcat start命令打开tomcat失败,报Neither the JAVA_HOME nor the JRE_HOME environment vari

热门文章

  1. 推荐几个.NET开源图表组件 [转]
  2. 创建好centos7虚拟机之后连xshell连不上虚机
  3. 46-单元测试(1)
  4. 本来中午打算应付下随便吃点,可是连盐都没有放的辣椒炒蛋实在是令人不快...
  5. Centos7 Apache 2.4.18编译安装
  6. C#中ToString格式大全
  7. symbian c++ 开发环境Carbide.c++搭建
  8. [剑指offer][JAVA]面试题第[18]题[删除链表的节点]
  9. 生产系统服务器是啥意思,生产系统服务器主机名怎么看
  10. 为什么火狐浏览器中点击按钮失效_各种浏览器审查、监听http头工具介绍