有下面一段代码:
#import "user32.dll" int PostMessageA( int A,int B,int C,int D); int GetParent( int A); int GetAncestor( int A,int B); #import
int k = GetAncestor(WindowHandle(Symbol(),Period()),2);
if ( k != 0 )
{
if ( TerminalInfoInteger(8) )
{
PostMessageA(k,273,33020,0);
Print("AutoTrading disabled");
return;
}
Print("AutoTrading already disabled");
return;
}
if ( CloseTerminal )
{
PostMessageA(GetParent(GetParent(GetParent(WindowHandle(Symbol(),Period())))),16,0,0);
}
疑似检查是否允许自动交易.
GetAncestor(A,B),该函数获取指定窗口的先祖窗口的句柄。
B 指窗口类型。其值为常数,可取以下值:
- GA_PARENT = 1 获取父窗口。这不包括所有者,功能同GetParent()功能
- GA_ROOT = 2 通过遍历父窗口链获取根窗口
- GA_ROOTOWNER = 3 通过遍历父窗口链和使用GetParent()返回的所有者窗口来获取根窗口
GetParent()获得一个指定子窗口的父窗口句柄。
发表评论