VC++中实现程序启动后隐藏窗口,最小化到托盘图标。

2024-02-17 04:32

本文主要是介绍VC++中实现程序启动后隐藏窗口,最小化到托盘图标。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://blog.csdn.net/wzqcongcong/article/details/6588441

 

        VC++中实现程序启动后隐藏窗口,最小化到托盘图标。       

对话框型程序的窗口隐藏:


1.OnInitDialog()中加上ShowWindow(SW_HIDE),无效。

2.在OnPaint()中加上ShowWindow(SW_HIDE),有效,但会闪烁。

3.重载虚函数WindowProc():

[cpp] view plain copy print ?
  1. LRESULT CTestDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam){ 
  2.     ShowWindow(SW_SHOW); 
  3.     return CDialog::DefWindowProc(message, wParam, lParam); 
LRESULT CTestDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam){ShowWindow(SW_SHOW);return CDialog::DefWindowProc(message, wParam, lParam);
}


4.在OnInitDialog()中使用SetWindowPlacement():

[cpp] view plain copy print ?
  1. GetWindowPlacement(&m_wp); // 恢复时用 
  2.  
  3. WINDOWPLACEMENT wp; 
  4. wp.length=sizeof(WINDOWPLACEMENT); 
  5. wp.flags=WPF_RESTORETOMAXIMIZED; 
  6. wp.showCmd=SW_HIDE; 
  7. SetWindowPlacement(&wp); 
GetWindowPlacement(&m_wp); // 恢复时用WINDOWPLACEMENT wp;
wp.length=sizeof(WINDOWPLACEMENT);
wp.flags=WPF_RESTORETOMAXIMIZED;
wp.showCmd=SW_HIDE;
SetWindowPlacement(&wp);

文档类型程序的窗口隐藏:

参见:实现VC程序启动时最小化到任务栏(完美解决闪烁问题)


取消任务栏显示窗口条:

[cpp] view plain copy print ?
  1. ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW); // 从任务栏中去掉 
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW); // 从任务栏中去掉


最小化到托盘图标:


方式1: 实现VC程序启动时最小化到任务栏(完美解决闪烁问题)


方式2:如何将程序启动时最小化到托盘

 

这篇关于VC++中实现程序启动后隐藏窗口,最小化到托盘图标。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/716680

相关文章

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

mybatis执行insert返回id实现详解

《mybatis执行insert返回id实现详解》MyBatis插入操作默认返回受影响行数,需通过useGeneratedKeys+keyProperty或selectKey获取主键ID,确保主键为自... 目录 两种方式获取自增 ID:1. ​​useGeneratedKeys+keyProperty(推

Spring Boot集成Druid实现数据源管理与监控的详细步骤

《SpringBoot集成Druid实现数据源管理与监控的详细步骤》本文介绍如何在SpringBoot项目中集成Druid数据库连接池,包括环境搭建、Maven依赖配置、SpringBoot配置文件... 目录1. 引言1.1 环境准备1.2 Druid介绍2. 配置Druid连接池3. 查看Druid监控

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

c++ 类成员变量默认初始值的实现

《c++类成员变量默认初始值的实现》本文主要介绍了c++类成员变量默认初始值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录C++类成员变量初始化c++类的变量的初始化在C++中,如果使用类成员变量时未给定其初始值,那么它将被

C++中NULL与nullptr的区别小结

《C++中NULL与nullptr的区别小结》本文介绍了C++编程中NULL与nullptr的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编... 目录C++98空值——NULLC++11空值——nullptr区别对比示例 C++98空值——NUL

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window