ShowWindow的API函数是显示窗体,但它在第一次调用和以后的调用是有差别的。第一次调用时,它的输入參数nCmdShow是须要输入WinMain函数里传入来的nCmdShow參数,而不能是其他參数。
 
函数声明例如以下:
WINUSERAPI
BOOL
WINAPI
ShowWindow(
    __in HWND hWnd,
    __in int nCmdShow);
hWnd是窗体的句柄。
nCmdShow是窗体显示的状态。可能设置的值例如以下:
SW_FORCEMINIMIZE是强制窗体最小化,主要使用在非窗体主线程的其他线程来操作。
SW_HIDE是显示窗体为隐藏状态。
SW_MAXIMIZE是显示窗体为最大化。
SW_MINIMIZE是显示窗体为最小化。
SW_RESTORE是从任务里恢复窗体显示。
SW_SHOW是激活窗体为当前窗体,而且显示为当前的大小和位置。
SW_SHOWDEFAULT是创建进程时显示窗体的值。
SW_SHOWMAXIMIZED是激活窗体为当前窗体,而且显示最大化。
SW_SHOWMINIMIZED是激活窗体为当前窗体,而且显示最小化。
SW_SHOWMINNOACTIVE是显示窗体为最小化,但不激活它作为当前窗体。
SW_SHOWNA是显示为当前的大小和位置,但不激活它作为当前窗体。
SW_SHOWNOACTIVATE是显示当前窗体,但不激活它作为当前窗体。
SW_SHOWNORMAL是显示当前窗体,但窗体是最小化或最大化时会恢复窗体为原来的大小和位置。
 
调用这个函数的实比例如以下:
#001 BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
#002 {
#003  HWND hWnd;
#004 
#005  hInst = hInstance; // 保存实例句柄到全局变量里。
#006 
#007  hWnd = CreateWindow(szWindowClass,
#008         szTitle,
#009         WS_OVERLAPPEDWINDOW,
#010         CW_USEDEFAULT,
#011         0,
#012         CW_USEDEFAULT,
#013         0,
#014         NULL,
#015         NULL,
#016         hInstance,
#017         NULL);
#018 
#019  if (!hWnd)
#020  {
#021         return FALSE;
#022  }
#023 
#024  ShowWindow(hWnd, nCmdShow);
#025  UpdateWindow(hWnd);
#026 
#027  //
#028  //蔡军生 2007/07/14
#029  //显示窗体測试。
#030  MessageBox(NULL,_T("最大化"),_T("測试"),MB_OK);
#031 
#032  //显示窗体为最大化。
#033  ShowWindow(hWnd, SW_SHOWMAXIMIZED);
#034 
#035  
#036  MessageBox(NULL,_T("原来位置"),_T("測试"),MB_OK);
#037 
#038  //显示窗体为原来位置。
#039  ShowWindow(hWnd, SW_SHOWNORMAL);
#040 
#041 
#042  return TRUE;
#043 }
 
在第24行里先调用这个函数显示创建进程的窗体状态。
第33行里显示窗体为最大化。
第39行里显示窗体为原来的状态。
 

这样就能够掌握了ShowWindow函数的使用。

【出处】http://blog.csdn.net/linhong34/archive/2007/08/01/1721829.aspx

【转载】ShowWindow函数的更多相关文章

  1. (转载)函数:mysqli_query和mysql_query有何区别?

    (转载)http://wzan315.blog.163.com/blog/static/37192636201241732045299/ Mysqli.dll是一个允许以对象的方式或者过程操作数据库的 ...

  2. 转载------------C函数之memcpy()函数用法

    转载于http://blog.csdn.net/tigerjibo/article/details/6841531 函数原型 void *memcpy(void*dest, const void *s ...

  3. 转载 js函数声明和函数表达式

    在js中函数有两种表达方式.1 函数声明 2 函数表达式 函数声明 function sayname(){ alert("li lei"); } 函数表达式 var sayname ...

  4. [转载]findContours函数参数说明及相关函数

    原文地址:findContours函数参数说明及相关函数作者:鸳都学童 findContours函数,这个函数的原型为: void findContours(InputOutputArray imag ...

  5. [转载] poll()函数

    原地址:http://baike.baidu.com/view/2997591.htm   poll()函数:这个函数是某些Unix系统提供的用于执行与select()函数同等功能的函数,下面是这个函 ...

  6. 转载 --mysql函数大全

    控制流函数 IFNULL(expr1,expr2) 如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2.IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境 ...

  7. [转载]oracle函数listagg的使用说明

    工作中经常遇到很多需求是这样的,根据条件汇总某些字段,比如我遇到的是,我们公司有三个投资平台,同一个客户拿手机号在三个平台都注册了,但注册过的用户名不一样,显示的时候需要根据手机号显示所有注册过的名称 ...

  8. [转载]decode()函数简介

    今天看别人的SQL时看这里面还有decode()函数,以前从来没接触到,上网查了一下,还挺好用的一个函数,写下来希望对朋友们有帮助哈! decode()函数简介: 主要作用:将查询结果翻译成其他值(即 ...

  9. [转载]strtok函数和strtok_r函数

    1.一个应用实例 网络上一个比较经典的例子是将字符串切分,存入结构体中.如,现有结构体 typedef struct person{     char name[25];     char sex[1 ...

随机推荐

  1. Python中通过Image的open之后,去show结果打不开bmp图片,无法正常显示图片

    在windows的cmd命令行下,使用Python的PIL库打开并显示一个jpg图片: ? 1 2 3 openedImg = Image.open(saveToFile); print " ...

  2. 如何启动 SQL Server Agent(SQL Server 配置管理器)

    如何启动 SQL Server Agent(SQL Server 配置管理器) SQL Server 2008 R2 其他版本   4(共 6)对本文的评价是有帮助 - 评价此主题 可以从 SQL S ...

  3. HDU 1171 Big Event in HDU(DP)

    点我看题目 题意 : 给你一个n,然后n组数据,每组两个数字,一个是物品的价值,另外一个是物品的数量,让你尽量将这些东西分成价值相等的两份,如果无法相等就前一份要大于后一份. 思路 :这个题可以转化成 ...

  4. 使用Eclipse调试Android Native Application---cocos2d-x + Eclipse + Android + ndk

    纠结很多天的ndk 调试, 终于在 mac  下面顺利完成(注意在windows还是没弄成功,蛋疼...) 调试方法: 1:先google, ndk demo .  把ndk 最基本的hellword ...

  5. ANDROID_MARS学习笔记_S02_011_ANIMATION_LayoutAnimationController

    一.简介 二.代码1.xml(1)activity_main.xml <ListView android:id="@id/android:list" android:layo ...

  6. linux内存管理机制

    物理内存和虚拟内存 我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多,因此,我们希望所有数据的读取和写入都在内存完成,而内存是有限的,这样就引出了物理内存与虚拟内存的概念. 物理内存就是系统 ...

  7. error: 'LOGE' was not declared in this scope

    移植了下HAL,发现编译出现如下错误 error: 'LOGE' was not declared in this scope 比较了一下android4.1的 system/core/include ...

  8. EventLog实现事件日志操作

    选中”我的电脑”,在其右键菜单中选择“管理”,在打开的对话框中包括了如下图所示的“日志”信息: 选中其中的某一条日志,可以看到如下的详细信息: 我们应该如何通过写代码的方式向其中添加“日志”呢? 在操 ...

  9. 转载:CEO应向软件工程师学习的7个技能

    软件工程师的哪些技能是值得CEO学习的?显然,软件工程师是逻辑的,高效的,注重细节的,有计划的,并且大多数CEO也是如此.但是,软件工程师还有一些更微妙,甚至是令人懊恼的品质,那么CEO是否可以从中学 ...

  10. Bootstrap中的less基础

    在线编译 因为 less 的语法毕竟相对简单,所以一些在线工具可以很轻松的做到.比如 http://less.cnodejs.net http://www.ostools.net/less  一般都有 ...