cb mdi child question(0分)

W

wjs

Unregistered / Unconfirmed
GUEST, unregistred user!
题目压得太深了,我只是欲提前一些。
黎匡的onemdi Delphi 例程我已看过,且运行得很好,我现欲用c++builder 做同样的事,大部分已编译过去,但其最后3行不知怎样变为cb的语句。
Child:=TForm(FormClass.NewInstance);
TForm(fm):=Child;
Child.Create(AOwner);
我的代码如下:
void __fastcall TMainForm::CreateMDIChild(TFormClass FormClass,
void *fm, TComponent *AOwner)
{
//--- only open one new MDI child window ----
int i;
TForm *Child;
for( i=0;
iformCount -1;
i++)
if(Screen->Forms->ClassType() == FormClass)
{
Child = Screen->Forms;
if(Child->WindowState==wsMinimized)
ShowWindow(Child->Handle,SW_SHOWNORMAL);
else
ShowWindow(Child->Handle,SW_SHOWNA);
if(!Child->Visible) Child->Visible = True;
Child->BringToFront();
Child->SetFocus();
(TForm*)fm = Child;
return;
}
/*Child = (TForm*)TForm::NewInstance();
(TForm*)fm = Child;
Child.TForm::Tform(AQwner);
*/
(TForm*)fm = Child = new TForm(AOwner);
}

void __fastcall TMainForm::FileNew1Execute(TObject *Sender)
{
CreateMDIChild(__classid(TfrmChild0) , Child0, this);
}

编译全通过,但运行时,无法建立新窗体。
再用
child->Show()
的结果是一普通窗体,不是子窗体。
 
我也想知道答案。
 
接受答案了.
 
The question have been ansswered by Dreamtiger.
 

Similar threads

顶部