Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2011, 04:04   #1
Airou
Форумчанин
 
Регистрация: 09.04.2008
Сообщений: 151
По умолчанию Сделать неглавную форму активной.

Как сделать неглавную форму активной при запуске приложения?

После запуска все отлично работает и после операций hide\show в фокусе показывается 6ая форма. Но сразу при запуске приложения никак не могу сделать 6ую форму активной.

Код:
void __fastcall TForm2::FormShow(TObject *Sender)
{
    HWND hWnd2; //главная форма
    hWnd2 = Form2->Handle;
    SetWindowPos(hWnd2, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);

    Form6->Show(); //вспомогательная форма
    PageControl1Change(PageControl1);

}
Код:
void __fastcall TForm6::FormShow(TObject *Sender)
{
    HWND hWnd6;
    hWnd6 = Form6->Handle;
    SetWindowPos(hWnd6, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
    //SetForegroundWindow(hWnd6);
   // BringWindowToTop(hWnd6);
}

Последний раз редактировалось Airou; 06.11.2011 в 04:11.
Airou вне форума Ответить с цитированием
Старый 07.11.2011, 15:31   #2
Averon
 
Регистрация: 04.11.2011
Сообщений: 8
По умолчанию

Здравствуйте. Попробуйте в блоке Project->View Source .
Между try и catch есть код для Создания 2-х форм. :
/////////////////////////////////////////////////////////////////////////
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->CreateForm(__classid(TForm2), &Form2);
Application->Run();
//////////////////////////////////////////////////////////////////////////
Допустим Form2 не главная, тогда, чтобы активировать её при запуске мы пропишем следующий код:

TForm2& Form2=*new TForm2(NULL);
Form2.Show();
Form2.Update();
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();

P.S не забудьте подключить в этом же блоке #include "Unit2.h"
Averon вне форума Ответить с цитированием
Старый 09.11.2011, 16:54   #3
Airou
Форумчанин
 
Регистрация: 09.04.2008
Сообщений: 151
По умолчанию

Спасибо, попробую!
Airou вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сделать ячейку активной / неактивной по условию Cluster Microsoft Office Excel 10 31.07.2015 09:50
Как сделать активной новую Книгу? Sergey112233 Microsoft Office Excel 10 24.07.2011 16:00
Показать Form2 по верх Form1 и сделать активной Shouldercannon Общие вопросы Delphi 15 02.07.2011 21:13
Как сделать форму всегда активной? londoner Общие вопросы Delphi 3 04.03.2007 14:44
как сделать так чтобы при открытии второй формы олько она была активной doncova1 Общие вопросы Delphi 2 03.02.2007 19:34