intraweb如何在一个TIWAppForm中显示另一个TIWAppForm(或TFrame)(100分)

  • 主题发起人 主题发起人 3fly
  • 开始时间 开始时间
3

3fly

Unregistered / Unconfirmed
GUEST, unregistred user!
intraweb如何在一个TIWAppForm中显示另一个TIWAppForm(或TFrame)
这样我就可以把最外面这层form作为主form,其它form作为子form,可以单独开发,或作为package来开发(作为package开发怎么访问DataModule?)

我知道TFrame可以用如下语句产生
frame1 := TFrame1.Create(Self);
但create完这个frame,要在主form的同样位置显示另一个frame时,要先free先前的frame,这样操作几次,程序就会出错了

而在一个TIWAppForm中显示另一个TIWAppForm我还不会,最好两个Form都可以有Template,还有TFrame可以有Template吗?

还有,放在TIWRegion之类上的控件,怎么在template中一下就放上去,象
{%IWRegion1%}
这样写,不能把IWRegion1和其上的控件放在template上……
 
请问有人吗?
 
1、将两个TIWAppForm放在一个窗口上,我也不会!应该不可能吧!
2、tFrame能够实现你的要求。tFrame访问datamodule由困难吗?不是已经将datamodule
的单元use进来了吗?该单元不是有类似datamodule1这样的函数吗?
3、将TFrame放到窗体上:选择点击delphi的第一页控件,即standard页,点击第一个控件
即frames控件,然后点击窗口的某个位置,这是会有对话框出现——如果你已经定义了
至少一个frame的话。
4、Tframe不能使用Template
5、TIWRegion?这个东西在5.0.43版本的时候,没有对用的客户端对象,仅仅在设计时帮
助你布局而已。后来的版本可能有了对应的客户端对象,可能是iframe或者是div?
span?我不太清楚。
 
1. 每个TIWAppForm对应一个HTML的template,我就可以把TIWAppForm看作是一个.html文件,既然两个.html文件都可以在一个IE窗口中同时显示,为什么TIWAppForm不行?

2.如果我用TFrame来实现MDI风格中MDIChild的功能,那么当我打开一个MDIChild时,原先打开的我就不再需要了,于是我调用frame1.free——马上出exception,或者我调用frame1.hide也行——实际上frame1没有被隐藏,还是显示在主FORM上

我说的访问DataModule困难,是用package模式来开发才有的,package中的TIWAppForm怎么访问主程序(IWProject.dpr)中的DataModule?是"uses DataModuleUnit",然后用"function DataModule1: TDataModule1;"来访问,这样编译package,会有错说iwinit.dcu不能被包含在package中,好象这样uses,delphi会把DataModuleUnit.pas和ServerController.pas作为package的一个pas(implicit import),而不是主程序的pas
 
>>1……既然两个.html文件都可以在一个IE窗口中同时显示,为什么TIWAppForm不行?
首先,你是怎样让它们同时显示的?
intraweb开发的页面,处理事件是在服务器端完成。每个页面对应一个窗口,如果你将两
个html文档放在一个页面里,那么哪个窗口来响应页面上的事件?
当然,没有不可能的事情,只是不容易实现而已。pagemode可以实现,intraweb7也可以,但都不容易。

>>2如果我用TFrame来实现MDI风格中MDIChild的功能,……
非常好的想法!!我试验了一下,将TFrame 隐藏(hide)没有问题!是不是你用了template?
>>3关于package
既然用package,那么就应该跟具体应用无关,你这种情况合适吗?

 
1. pagemode怎么实现?能否给个详细的说明(step by step)

2. 我检查了一下,我的frame我是特别设了color属性的,上面我没放IWControl,所以我hide时看到color没变回主form的color,我就以为……不过在上面放了IWControl后,我调用hide,可以看到上面的IWControl是不见了,但IWRegion好象还在,因为颜色没变回来,如果没有更好的办法,只能这样了……

3. package的开发,在一般的project中我也用,可以datamodule单独放在一个package(如dm_package)中,然后在开发的package(如package1)中requires这个datamodule的package,这样的package在uses datamodule package中的unit时,就会是唯一的一份datamodule(在loadpackage package1之前,loadpackage dm_package),但IntraWeb的datamodule这个unit却不能放在一个package之中,这个你测试一个就知道了
 
后退
顶部