如何 解决 内嵌的窗口 没有焦点问题?
procedure TForm2.Button1Click(Sender: TObject);
var
h: HWnd;
p: array of char;
begin
h := GetWindow(Handle, GW_HWNDFIRST);
while h <> 0 do
begin
GetClassName(h, p, Length(p));
if p = Keyword3 then //如果窗口类名=.INI窗口标题对应的类名
begin
GetWindowText(h, p, Length(p)); //那就得到其窗口标题
//showmessage(p);
Clipboard.AsText := p;
end;
h := GetWindow(h, GW_HWNDNEXT);
end;
h := FindWindow(nil, PWideChar(Clipboard.AsText)); // 这里再把p分配给找窗口
if h <> 0 then
begin
Winapi.Windows.SetParent(h, Self.Scite.Handle);
Winapi.Windows.MoveWindow(h, 0, 0, Self.Scite.Width, Self.Scite.Height, True);
SetWindowLong(h, GWL_STYLE, GetWindowLong(h, GWL_STYLE) and (not WS_CAPTION) and (not WS_BORDER) and (not WS_THICKFRAME)); //去除窗口标题栏!
end
else
ShowMessage('程序未运行,请点【顶部齿轮图标】重新配置!');
end; 应该是学习框架机制及原理,我也不懂这个,目前解决办法 找图
页:
[1]