字符窗口操作:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>子父窗口的操作</title>
</head>
<body>
<script>
var win=null;
function op(){
win=window.open("about:blank","win","width=200,height=200");
win.document.write("<input type='button' value='关闭父窗口' onclick='window.opener.opener=null;window.opener.close()'>");
win.document.write("<input type='button' value='刷新你窗口' onclick='window.opener.location.reload()'>");
}
</script>
<input onclick="op()" value="打开窗口" type="button"><input type="button" value="最小化" onclick="if(win&&win.open&&!win.closed){win.resizeTo(0,0);win.moveTo(0,window.screen.width);}else alert('还没有打开窗口或已经关闭')"><input type="button" value="最大化" onclick="if(win&&win.open&&!win.closed){win.moveTo(-4,-4);win.resizeTo(screen.availWidth+8,screen.availHeight+8);}else alert('还没有打开窗口或已经关闭');"><input type=button value="关闭子窗口" onclick="if(win&&win.open&&!win.closed){win.opener=null;win.close()}else alert('还没有打开窗口或已关闭')"><input type=button value="刷新子窗口" onclick="if(win&&win.open&&!win.closed){win.location.reload();win.focus()}else alert('窗口还没有打开或已关闭')"><input type="button" value="看子窗口的大小" onclick="if(win&&win.open&&!win.closed){alert(win.document.body.clientWidth+'*'+win.document.body.clientHeight);win.focus();}else{alert('还没有打开窗口或者已关闭')};">
</body>
</html>
递归
<html>
<head>
<title>javascript递归</title>
<script language="javascript">
var testCase = {
sum: 0,
run: function(n){
if(n>3){
return 3;
}
else {
n=testCase.run(n+1);
alert(n);
return n;
}
}
};
function test(){
var ff=testCase.run(1);
alert(ff);
}
</script>
</head>
<body>
<input type="button" value="test" onclick="test()" />
</body>
</html>
分享到:
相关推荐
当调用`EnumChildWindows`时,它会递归地遍历指定父窗口的所有直接子窗口,对每个子窗口调用回调函数。这使得我们可以针对特定程序(由其主窗口句柄标识)查找并操作其所有子窗口。 在实际应用中,枚举程序所有子...
- `hwnd`: 要遍历的父窗口句柄。 - `windowName`: 要查找的子窗口标题的一部分,作为字符串传递。 2. **局部变量**: - `strTitle`: 存储子窗口的标题,以便后续比较。 - `fdwnd`: 当前正在处理的子窗口句柄。 ...
5. 将子窗口添加到数据结构,并更新它们的父窗口信息。 6. 如果使用栈方法,将子窗口压入栈继续遍历;如果使用递归,则直接对子窗口进行递归调用。 7. 遍历完成后,数据结构中就形成了完整的窗口树。 通过这种方式...
5. 将当前子目录节点添加到父节点下。 #### 用户界面实现 接下来,我们来看一下如何创建用户界面来显示生成的文件目录树。这里使用了一个简单的`frmMain`类来管理窗口和按钮等控件。 ```csharp public class ...
然而,如果窗口不是顶级窗口或者我们只知道部分信息,例如只知父窗口的句柄和子窗口的部分属性,这时就需要使用`FindWindowEx`函数。`FindWindowEx`可以递归地查找子窗口。它的原型如下: ```c++ HWND FindWindowEx...
5. **父窗口和子窗口**:在Windows系统中,窗口可以有层级关系,即父窗口和子窗口的概念。通过`GetParent`函数可以获取一个窗口的父窗口句柄,而`EnumChildWindows`函数则用于遍历一个父窗口的所有子窗口。 6. **...
#### 方法二:递归遍历所有子对象 上述方法仅适用于顶层窗体及其直接子控件,如果窗体内还包含其他嵌套的窗体或者布局,则需要采用递归的方式进行深度遍历。递归方法可以确保所有的控件都被访问到。 ```cpp void ...
在Windows操作系统中,每个窗口都有一个父窗口和可能的子窗口。理解并操作窗口树是进行桌面应用开发的关键技能之一,尤其是在需要处理窗口之间的交互或管理多个窗口时。 该压缩包中的源码可能是用来遍历和获取当前...
WindowSniffer的主要功能就是定位到特定父窗口下的子窗口,并获取其序号。这对于调试、自动化测试或逆向工程等任务非常有用,因为它能帮助开发者精确地定位到他们想要操作的UI元素。 源码的实现可能包含了以下关键...
`EnumChildWindows`函数定义在`user32.dll`库中,它的主要作用是递归地遍历指定父窗口的所有子窗口,并对每个子窗口执行一个回调函数。这使得开发人员能够轻松地获取或操作窗口层次结构中的子窗口信息。 函数原型...
在实际应用中,可能需要对窗口树进行进一步的处理,比如查找特定类型的窗口、查找顶层窗口、获取窗口的父窗口等。这些可以通过遍历窗口树,结合`GetClassName`、`GetWindowText`等API函数实现。 易语言的特色在于其...
- `hwndParent`: 父窗口的句柄,从哪个窗口开始查找子窗口。 - `hwndChildAfter`: 起始查找的子窗口句柄,如果为0,则从父窗口的第一个子窗口开始查找。 - `lpszClass`: 子窗口的类名,可以用来匹配控件类型。 - `...
FindWindowExA函数是查找窗口的利器,它能基于父窗口句柄和子窗口的类名或窗口名来找到特定的子窗口。在多层嵌套的窗口结构中,这个函数可以帮助开发者精确地定位到需要操作的目标窗口。 枚举所有子窗体...
6. **EnumChildWindows**:如果要查找子窗口,可以使用此函数遍历指定父窗口的所有子窗口。 具体步骤如下: 1. 使用**EnumWindows**遍历所有顶级窗口,通过回调函数检查每个窗口的属性。 2. 在回调函数内,调用**...
这种情况下,子窗口的某些行为可能会受到父窗口的影响。枚举时,如果需要包含子类窗口,可能需要使用`EnumChildWindows`函数,它会递归地枚举一个窗口的所有子窗口。 **隐藏窗口** 默认情况下,`EnumWindows`只会...
5. 使用`FindWindowEx`函数:这是一个强大的函数,可以根据父窗口句柄和子窗口类名或窗口标题找到特定的子窗口句柄。 示例代码片段: ```vb Public Declare Function FindWindow Lib "user32" Alias "FindWindowA...
这个函数可以用来获取窗口的父窗口、子窗口或者下一个同级窗口,这对于遍历窗口层次结构至关重要。 "GetClassName"则是另一个Windows API函数,用于获取指定窗口的类名。类名提供了窗口类型的信息,如按钮、编辑框...
这涉及到递归调用fork()函数以及适当的条件判断来决定是继续创建子进程还是执行其他任务。 此外,为了直观展示进程树,可能还需要使用图形库,如ncurses或GTK+,在终端或窗口中绘制出树形结构,显示进程间的父子...
这可以通过`FindWindow`或`FindWindowEx`函数完成,它们允许你根据窗口类名、标题或者父窗口的句柄来查找窗口。 2. **定位控件**:找到窗口后,接着定位你要修改的特定控件。这可能需要`FindWindowEx`函数的递归...