HWnd

首页  后退  前进

HWnd
down2

HWnd

转换表达式为 HWND 句柄.

 

HWnd ( expression )

参数

expression

转换为 HWND 句柄的表达式.

返回值

成功:

如果表达式可以转换, 则返回 HWND 句柄.

失败:

如果表达式不表示一个有效的窗口, 将返回 0 (NULL) 句柄, 并设置 @error 为 1.

备注

双精度数不能转换为 HWND 句柄.

不能使用(窗口)文本字符串转换 HWND 句柄, 因为不能保证给定窗口以后不再有相同的 HWND 句柄.

虽然这不是严格禁止的, 但它是一个编程错误, 应予以避免.

 

函数示例

Example()
Func Example()
    ; Run Notepad
    Run("notepad.exe")
    ; Wait 10 seconds for the Notepad window to appear.
    Local $hWnd = WinWait("[CLASS:Notepad]", "", 10)
    ; Convert the handle to a string.
    Local $sHWnd = String($hWnd)
    ; Minimize the Notepad window and wait for 2 seconds.
    WinSetState(HWnd($sHWnd), "", @SW_MINIMIZE)
    Sleep(2000)
    ; Restore the Notepad window and wait for 2 seconds.
    WinSetState(HWnd($sHWnd), "", @SW_RESTORE)
    Sleep(2000)
    ; Close the Notepad window.
    WinClose(HWnd($sHWnd))
EndFunc   ;==>Example

----------------------------------------

 

该函数可以通过命令 exect 调用

参见:

Int, String, Number

例子
copy

exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]','''',5)||WinSetState(HWnd($var_h),'''',@SW_MINIMIZE) ;; 开始"记事本",等待出现并关闭

 

exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]','''',5)||SendKeepActive(HWnd($var_h)) <FOR> 1 <TO> 10 exect=Send('Hello')||Sleep(500) <NEXT> exect=SendKeepActive('''')||WinClose(HWnd($var_h)) ;;使用Send()函数运行记事本并保持记事本窗口处于活动状态

 

infos=2||9||notepad.exe||1 <FOR> 1 <TO> GLOBALINFOS1<0> exect=WinSetState(HWnd('GLOBALINFOS1<:INDEX:>'),'''',@SW_MINIMIZE) <NEXT> ;; 使用指定的进程名称notepad.exe最小化窗口

 

infos=2||9||notepad.exe||1 <FOR> 1 <TO> GLOBALINFOS1<0> exect=WinSetState(HWnd('GLOBALINFOS1<:INDEX:>'),'''',@SW_RESTORE) <NEXT> ;; 使用指定的进程名称notepad.exe恢复最小化的窗口

 

infos=2||9||TCIMG.exe||textv=x||1 <FOR> 1 <TO> GLOBALINFOS1<0> exect=WinSetState(HWnd('GLOBALINFOS1<:INDEX:>'),'''',@SW_MINIMIZE) <NEXT> ;; 折叠剪贴板查看器(命令textv)

 

infos=2||9||TCIMG.exe||textv=x||1 <FOR> 1 <TO> GLOBALINFOS1<0> exect=WinSetState(HWnd('GLOBALINFOS1<:INDEX:>'),'''',@SW_RESTORE) <NEXT> ;;展开剪贴板查看器的最小化窗口(命令textv)

up2

tcimage © Аверин Андрей для Total Commander Image Averin-And@yandex.ru