在您自己的应用程序中以可视方式包含其他应用 [英] Visually containing another app inside your own app

查看:201
本文介绍了在您自己的应用程序中以可视方式包含其他应用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有四个使用Delphi(Win32)编写的小型单一实用程序应用程序,每隔一段时间我都想用一种方式让他们感觉,好像它们都是一个应用程序,主要是使它们之间来回切换超级简单。例如,能够将它们作为容器插入到TabSheet中,或者沿着这些线条插入它们是非常棒的。



AppControls使得一个整洁的小组件与TForm后代类似,允许它们插入到Delphi应用程序中的另一个容器中(请参阅acEmbeddedForm http://www.appcontrols.com/appcontrols/overview.html'>此处),但我没有看到任何方法可以做到这与四个独立的应用程序,除非我建立第五个应用程序,记住这个最终结果,并编译所有形式的原始四个应用程序。



我也可以想象要包含或嵌入其他应用程序(比如记事本)。



这在Delphi中可能吗? (所有的事情都是可能的......< g>)......如果是这样,它会超级困难,并且需要大量的Windows API熟悉程度?

我在想这些的答案可能是肯定的,是的,但希望答案是肯定的,不是。以为我会问,只要确定。 < g>





如果我是从编程的角度来看这里的梦想,那么这样做的价值远远超过它的价值;任何关于实用程序的建议都可以在标准的三个或四个应用程序之间来回切换,而这些应用程序比在Windows中通常更简单? 解决方案

这个其他 SO问题

a>可以提供一些提示。基本上它声明你使用 SetParent 。您还可以使用 FindWindow ,然后调用SetParent将它们重置为您自己的。


I have four small single-form utility applications that I have written in Delphi (Win32), that every once in awhile I want to use in a way that makes them "feel" as if they are all one application, mostly to make switching back and forth between them super-easy. It would be great, for instance, to be able to insert them as containers inside a TabSheet, or something along those lines.

AppControls makes a neat little component that does something similar with TForm descendents, allowing them to be inserted inside another container in a Delphi application (see acEmbeddedForm http://www.appcontrols.com/appcontrols/overview.html'>here ), but I don't see any way to do this with four separate applications unless I build a fifth application with this end result in mind, and compile in all the forms of the original four applications.

I could also imagine wanting to "contain" or embed some other application as well (say, for instance, Notepad).

Is this possible in Delphi? (all things are possible... <g>)... and if so, would it be super difficult, and require massive amounts of under-the-hood Windows API familiarity?

I'm thinking the respective answers to these are probably yes, and yes, but hoping the answers are yes, and no. Thought I would ask just to be sure. <g>


If I am dreaming here from a programming perspective, and this is way more work than it's worth; any recommendations for utilities that make switching back and forth between a standard set of three or four applications simpler than it normally is in Windows?

解决方案

This other SO question could provide some hints. Basically it states that you use SetParent. You could also enumerate over existing windows (such as notepad.exe) using FindWindow and call SetParent on them to reparent under your own.

这篇关于在您自己的应用程序中以可视方式包含其他应用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆