C++builder 只运行窗口程序而不显示该窗口程序
1、有的时候想快速生成一个可以执行一般程序的exe文件,而不获取任何焦点,不影响用户的程序。可以在名字和工程名一样的那个cpp文件(默认的是project1.cpp)中添加这两条语句:
Application->ShowMainForm = false;
ShowWindow(Application->Handle,SW_HIDE);
并把form的visible属性设置为false(这一步很重要)
project1.cpp中的代码具体如下:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
//-------隐藏窗口---------------------------------
Application->ShowMainForm = false;
ShowWindow(Application->Handle,SW_HIDE);
//------------------------------------------------
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------
2、如果想再重新显示,可以这样操作:
ShowWindow(Application->Handle, SW_SHOW);
Application->MainForm->Visible = true;
或者在void __fastcall TForm1::FormCreate(TObject *Sender)这个方法中只用这一句话:
Form1->Visible=true;
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
