Anton.S |
Отправлено: 16.02.2004, 12:59 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 7
|
Всем, привет.
Пожалуста не ворчите на чайника. Типа "почему не поискал по форуму ? такое уже было ?" Уверен, что было и пытался искать. Только руки видать совсем кривые. До меня так и не дошел синтаксис строки поиска. Если я хочу найти целиком фразу: "при запуске программы", то как её задавать ?
--
Теперь основной вопрос.
Написана программа. Она долго загружается. И вот теперь, задним числом, захотелось, на время её загрузки вывести какое-нибудь окошко пользователю, что б не дергался, а подождал. Предполагаю, что можно сделать новое окно с требуемым сообщением, а уже в нем прописать создание основных форм, которые до этого были Autocreate. Но может есть какое-то стандартное решение ?
|
|
Dima |
Отправлено: 17.02.2004, 13:21 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 61
|
CODE |
Application->Initialize();
TSplashForm *form = new TSplashForm(NULL);
form->Show();
form->Update();
//здесь что-то очень долго делается
Application->CreateForm(__classid(TMainForm), &MainForm);// или здесь
delete form;
Application->Run();
| |
|
Guest |
Отправлено: 17.02.2004, 14:18 |
|
Не зарегистрирован
|
Спасибо, уже работает. |
|
trigger |
Отправлено: 19.02.2004, 10:29 |
|
Не зарегистрирован
|
QUOTE (Dima @ 17/02/2004, 14:23) | CODE |
Application->Initialize();
TSplashForm *form = new TSplashForm(NULL);
form->Show();
form->Update();
//здесь что-то очень долго делается
Application->CreateForm(__classid(TMainForm), &MainForm);// или здесь
delete form;
Application->Run();
|
|
а как отредактировать эту новую сплэш форму?
т.е. после
TSplashForm *form = new TSplashForm(NULL);
она будет пустая как я понял?
так же динамически на ней что-то рисовать, указывая вручную все свойства (размер, расположение, выравнивание...), да? |
|
Roman |
Отправлено: 19.02.2004, 14:27 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 78
|
Можно вывести уже созданную Вами форму. Для этого в файле проекта добавляем:
#include
#pragma hdrstop
//--------------------
USEFORM("UIndikProc.cpp", FIndikProc); //Ваша форма
//---------------------------------------------------------------------------
#include "UIndikProc.h" //заголовок Вашей формы
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR lpCmdLine, int)
{
try
{
Application->Initialize();
FIndikProc = new TFIndikProc(static_cast(NULL));
FIndikProc->Show();
FIndikProc->Label1->Caption = "Любые данные";
//можно послать сообщение окну (если это было предусмотрено)
SendMessage(FIndikProc->Handle, WM_INDIKPROC, 0, 0);
SendMessage(FIndikProc->Handle, WM_CLOSE, 0, 0);
delete FIndikProc;
Application->CreateForm(__classid(TFMaine), &FMaine);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
//------------------------------------------------------------------------------
|
|
|