要把一个窗口嵌到另一个窗口中

本文介绍如何通过单线程管理多个程序运行,并减少桌面空间占用,具体实现包括使用多线程技术与Windows API来最小化和隐藏窗口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 procedure   TForm1.Button2Click(Sender:   TObject);
var
    h:   HWND;
begin
    h   :=   WIndows.FindWindow(nil,   '你所要内嵌的程序的Caption ');
    Windows.SetParent(h,   Self.Panel1.Handle);
    Windows.MoveWindow(h,   0,   0,   200,   200,   true);

end;

我使用多线程的目标是减少桌面空间的占用。只需要运行一个多线程程序就可以了。但是,对于网站方面Cookies管理是个问题。

所以,用以上的代码写一个单线程管理多个程序,减少桌面空间的占用。一个点击最少化,其它的窗体也会隐藏。委屈

转自:http://topic.youkuaiyun.com/t/20041030/09/3505314.html

uses   shellapi;

procedure   TForm1.Button2Click(Sender:   TObject);
var   hSndrec32:   HWND;
begin
    hSndrec32   :=   WIndows.FindWindow(nil,   '声音   -   录音机 ');
    if   hSndrec32 <> 0   then
    begin
    Windows.SetParent(hSndrec32,   Panel1.Handle);
    Windows.MoveWindow(hSndrec32,   0,   0,panel1.Width,panel1.Height,true);
    end
    else
    showmessage( '未发现该程序! ');
end;

procedure   TForm1.FormCreate(Sender:   TObject);
begin
      shellexecute(handle, 'open ', 'sndrec32.exe ',nil,nil,sw_shownormal);
end;

转自:http://topic.youkuaiyun.com/t/20050104/16/3698398.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值