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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.01.2009, 04:46   #1
xxxsas
Пользователь
 
Регистрация: 16.11.2008
Сообщений: 79
Вопрос Form1 на второй план, Form2 - на первый

Даны две формы - главная (Form1) и вспомогателная (Form2).
код:
Код:
void __fastcall TForm1::FormShow(TObject *Sender)
{
 Form1->Enabled = false;
 Form2->Show();
}
но при загрузке активной остается Form1, а Form2 как бы на втором плане(хотя и отображается конечно), а мне надо, чтобы Form2 была при показе над Form1 (в смысле перед ней, на первом плане).
В интернете инфы не нашел...

Модератор: тег CODE

Последний раз редактировалось MaTBeu; 15.01.2009 в 11:12.
xxxsas вне форума Ответить с цитированием
Старый 15.01.2009, 11:15   #2
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,604
По умолчанию

Вам с самого начала нужно чтобы вторая форма вылетала перед первой?
Тогда нужно в обработчике FormCreate или в конструкторе формы написать ваш код.
MaTBeu вне форума Ответить с цитированием
Старый 15.01.2009, 15:21   #3
xxxsas
Пользователь
 
Регистрация: 16.11.2008
Сообщений: 79
По умолчанию

Цитата:
Сообщение от MaTBeu Посмотреть сообщение
Вам с самого начала нужно чтобы вторая форма вылетала перед первой?
Тогда нужно в обработчике FormCreate или в конструкторе формы написать ваш код.
если сделать так:

Код:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
 Form1->Height = 420;
 Form1->Width = 415;

 Form1->Enabled = false;
 Form2->Show();
}
то выскакивает ошибка при компиляции- ошибка в модуле.... по адресу...

Пробывал еще через SetFocus, но не помогло..

Последний раз редактировалось xxxsas; 15.01.2009 в 15:34.
xxxsas вне форума Ответить с цитированием
Старый 15.01.2009, 15:27   #4
Max2114
 
Регистрация: 06.01.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от MaTBeu Посмотреть сообщение
Вам с самого начала нужно чтобы вторая форма вылетала перед первой?
Тогда нужно в обработчике FormCreate или в конструкторе формы написать ваш код.
Я когда-то двано деле это на C++Builder 5 enterprise... все работало без проблем. и ничего не прописывал в обработчик formCreate...только вот исходников не сохранилось..
Max2114 вне форума Ответить с цитированием
Старый 15.01.2009, 20:47   #5
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,604
По умолчанию

Ну тогда я думаю
Код:
Form1->Visible = false; 
Form2->Visible = true;
Если все предыдущее не пашет...
MaTBeu вне форума Ответить с цитированием
Старый 15.01.2009, 23:30   #6
xxxsas
Пользователь
 
Регистрация: 16.11.2008
Сообщений: 79
По умолчанию

я нашел решение задачи, но за активность все равно спасибо

решение->код:
Код:
void __fastcall TForm1::FormShow(TObject *Sender)
{
 Form1->Enabled = false;
 Form2->ShowModal();
}
xxxsas вне форума Ответить с цитированием
Старый 16.01.2009, 08:41   #7
Max2114
 
Регистрация: 06.01.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от xxxsas Посмотреть сообщение
я нашел решение задачи, но за активность все равно спасибо

решение->код:
Код:
void __fastcall TForm1::FormShow(TObject *Sender)
{
 Form1->Enabled = false;
 Form2->ShowModal();
}
Точно... именно так я и делал
Max2114 вне форума Ответить с цитированием
Старый 19.01.2009, 15:04   #8
StarWorm
Форумчанин
 
Регистрация: 17.11.2008
Сообщений: 233
По умолчанию

Код:
 Form1->Enabled = false;
А зачем первую форму делать недоступной???
P.S. Вы и так вызываете Form2, как модальную!!!
P.P.S Причем потом в коде придется делать
Код:
Form1->Enabled = true;
StarWorm вне форума Ответить с цитированием
Старый 31.05.2011, 05:47   #9
Эльмирчик (ms)
 
Аватар для Эльмирчик (ms)
 
Регистрация: 08.01.2009
Сообщений: 6
По умолчанию

Form1.Visible = False
Form2.Visible = True
«Мое поражение не будет означать, что нельзя было победить.Многие потерпели поражение,стараясь достичь вершины Эвереста,и в конце концов Эверест был побежден».
(Эрнесто Че Гевара)
Эльмирчик (ms) вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi. Form1 и Form2. Xeon332 Общие вопросы Delphi 8 01.11.2008 15:52
form1 и form2 SLIMMUS Общие вопросы Delphi 3 29.10.2008 01:15
Нужно чтобы Form2 открывался по середине Form1 diznt Помощь студентам 1 31.08.2008 03:37
две формы Form1 и Form2 Михаил Юрьевич Общие вопросы Delphi 11 02.03.2008 19:38
Form1.Hide и Form1.Show... Roof Общие вопросы Delphi 9 13.10.2007 13:33