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