有几个重叠在一起的窗口(这些窗口都是动态创建的,都属于同一类),现在我想将最上面的窗口A置底,调用SetWindowPos函数后,将其置底,现在我想获取它的子窗口(即A置底后最上面的窗口),应怎样做?
有同事建议我用EnumChildWindows,配合EnumChildProc,不过我不会用,有谁可以示范一下.
有同事建议我用EnumChildWindows,配合EnumChildProc,不过我不会用,有谁可以示范一下.
解决方案 »
- 在vista下,我安装delphi6老报兼容性问题,用不了delphi,郁闷
- if MsTscAx1.Disconnect=true then form2.Close; 这句提示出错!大家来看看!
- 使用delphi读写数据库,但又不想设置窗体form1、adoquery1等控件,只想象以前写pascal程序那样直接在一个程序中写完所有代码,请问该怎么做?
- 如何读取 access 数据库的信息!(即打开access数据库文件->数据库属性这一页上的信息)
- 播放WMV文件时怎么转换声道?CSDN没人了吗?
- 怎么在一个字符串中得到逗号.并替换为别的字符
- 狂散一百分,泣血跪求一简单问题的答案
- 关于鼠标钩子的问题
- 关于三层的问题!
- 我想在窗体失去焦点时触发一个过程,但窗体没有onExit事件,用什么法呢?
- 指针问题请教!!!
- 请教怎么样在insert into C select ....from a,b语句中加一个变量
var
hWnd: THandle;
begin
hWnd := FindWindow(fWndCls, fWndCap);
if hWnd > 0 then EnumChildWindows(hWnd, @GetChildWndProc, 0);
Result := hTmpWnd;
end;function GetChildWndProc(hWnd: HWND; lParam: LPARAM): Boolean; stdcall;
var
StrTmp: string;
Buf: array[0..255] of Char;
begin
Result := True;
ZeroMemory(@Buf, SizeOf(Buf));
GetClassName(hWnd, @Buf, 255);
StrTmp := Buf;
if CompareText('GXEDIT', StrTmp) = 0 then
begin
hTmpWnd := hWnd;
Result := False;
end;
end;