首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

窗口显示有关问题

2012-02-08 
窗口显示问题我原本的程序是这样子的:有个主界面,其他有很多个小工具窗口可以通过主界面上的菜单Show()出

窗口显示问题
我原本的程序是这样子的:
有个主界面,其他有很多个小工具窗口可以通过主界面上的菜单Show()出来,如果Show()出来一个窗口后,我鼠标若是点击其他地方,该工具窗口不隐藏,只是焦点会是其他点击到的窗口。这是我希望看到的;
程序修改后出现的问题现象:
但是我现在想做个登陆界面,做出来后,我的第一个显示界面就是这个登陆界面了,通过登陆界面打开主界面后发现原先的窗口关系发生了变化,比如在主界面下,如果我打开了小工具窗口,而此时再点击以外的地方的话,以前那些小工具窗口就会隐藏了,只有把主界面缩小才能看到这些小窗口。
我的问题:
希望登陆界面完成登陆功能后,能自动销毁,并且恢复没有登陆界面时的窗口间的关系,请问该怎么实现呢?我的表达不好,不知道问题描述清楚了没有,期待您的回答。

[解决办法]
你的登陆界面结束后是不是没有销毁,你是不是把登陆界面当成了现在的主窗体了?如果是,不要改变原来的主窗体.新做的登陆窗体在创建主窗体之前调用,然后销毁,显示主窗体.

象这样

C/C++ code
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int){DWORD lTime;        try        {                 Application->Initialize();                 loginForm =new TloginForm(loginForm);                 loginForm->Show();                 loginForm->Update();                 lTime=GetTickCount();                 while((GetTickCount()-lTime) / 1000 <1);                 loginForm->Hide();                 loginForm->Free();
[解决办法]
我一般的作法是,打开项目主文件,如project1.cpp

 try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->CreateForm(__classid(Tlogin_f), &login_f);
login_f->ShowModal(); //在这个位置加入登录的form
Application->Run();
}

热点排行