VC6.0 SetWindowPos

VC6.0 SetWindowPos()

1.此函数利用的坐标参数用的是Client坐标,对于子窗口用的是其父窗口的坐标系。然而对于用DoModal()弹出的窗口,万一在资源属性里未曾抉择Child属性的话,它的父窗口是DeskTop,而不是调用DoModal()的窗口;

2.SetWindowPos详解函数名:

  SetWindowPos

头文件:

  winuser.h

函数原型:

  BOOLSetWindowPos
  (
  HWNDhWnd,//窗口句柄
  HWNDhWndInsertAfter,//编排次序的句柄
  intX,//程度坐标
  intY,//垂直坐标
  intcx,//宽
  intcy,//高
  UINTuFlags//窗口定位标识
  );

解释:

  这个函数能改换窗口的大小、位置和设置子窗口、弹出窗口或顶层窗口的编排次序。
  归来值:

  BOOL,万一归来值非零表示获胜,归来零表示失利。讹谬消息请比照GetLastError函数。

参数表:

  参数种类及解释
  hwndHWND,欲定位的窗口句柄
  hWndInsertAfterHWND,置于hwnd前面的窗口句柄。这个参数定然是窗口的句柄或是下面的值之一:   HWND_BOTTOM将窗口置于其它所有窗口的底端
  HWND_NOTOPMOST将窗口置于其它所有窗口的顶部,并位于任何最顶部窗口的后面。万一这个窗口非顶部窗口,这个符号对该窗口并不发生波及
  HWND_TOP将窗口置于它所有窗口的顶部
  HWND_TOPMOST将窗口置于其它所有窗口的顶部,并位于任何最顶部窗口的前面。即便这个窗口不是行动窗口,也坚持最顶部事态

x: 
 
  int,指定窗口新的X坐标

Y:  

  int,指定窗口新的Y坐标

cx:  

  int,指定窗口新的宽度

cy:  

  int,指定窗口新的高度

wFlags:

  UINT,指定窗口事态和位置的符号。这个参数利用下面值的组合:SWP_DRAWFRAME环抱窗口画一个框
  SWP_FRAMECHANGED发送一条WM_NCCALCSIZE消息进去窗口www.emi7.com,即便窗口的大小未曾发生改换。万一不指定这个参数,消息WM_NCCALCSIZE只有在窗口大小发生改换时才发送
  SWP_HIDEWINDOW隐藏窗口
  SWP_NOACTIVATE不激活窗口
  SWP_NOCOPYBITS屏障客户区域
  SWP_NOMOVE坚持目前位置(X和Y参数将被疏忽)
  SWP_NOOWNERZORDER不改换所有窗口的位置和编排次序
  SWP_NOREDRAW窗口不积极重画
  SWP_NOREPOSITION与SWP_NOOWNERZORDER符号雷同
  SWP_NOSENDCHANGING遏止这个窗口接受WM_WINDOWPOSCHANGING消息
  SWP_NOSIZE坚持目前大小(cx和cy会被疏忽)
  SWP_NOZORDER坚持窗口在列表的目前位置(hWndInsertAfter将被疏忽)
  SWP_SHOWWINDOW揭示窗口


备注:

  万一设置了SWP_SHOWWINDOW或SWP_HIDEWINDOW符号,这个窗口不发生挪动或改换大小。窗口成为最顶级窗口后,它的所有子窗口也会进去最顶级。一旦将其设为非最顶级,则它的所有子窗口也会转为非最顶级。

相干函数:

  MoveWindow,SetActiveWindow,SetForegroundWindow

例子:

  //设置顶层窗口
  SetWindowPos(Handle23.sidchina.com,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE||SWP_NOSIZE);

  //废止顶层窗口
  SetWindowPos(Handle,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE||SWP_NOSIZE);不幸的是,随着工夫的挪动,客户代码可能会改换归来的Dimension对象的值,这个时候,追寻讹谬的起源是件枯燥且费时的事情,尤其是在多线程环境中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值