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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2009, 23:03   #1
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,893
По умолчанию Первая форма перекрывает вторую

В двух проектах все нормально было, в третьем проблема. Form1 перекрывает Form2, хотя по условию Form2 появляется после Form1.
Во всех трех приложениях Form2 вызывается так
Код:
if (Edit1.Text='') then begin
Form2.Show;
Exit;
end else
Как сделать чтобы Form1 не закрывала собой Form2?

P.S. ShowModal не предлагать.

Последний раз редактировалось Shouldercannon; 26.04.2009 в 23:13.
Shouldercannon вне форума Ответить с цитированием
Старый 26.04.2009, 23:18   #2
BuT@JL
Форумчанин
 
Регистрация: 27.11.2008
Сообщений: 137
По умолчанию

with form2 do
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE); - приложение поверх всех окон

Может это поможет
BuT@JL вне форума Ответить с цитированием
Старый 26.04.2009, 23:24   #3
Лукманов Александр
работа не волк....
Форумчанин
 
Аватар для Лукманов Александр
 
Регистрация: 09.06.2008
Сообщений: 337
По умолчанию

у тебя наверно в Form1 свойство FormStyle стоит fsStayOnTop. Поставь Normal
Цель, для которой требуются неправые средства, не есть неправая цель.
Лукманов Александр вне форума Ответить с цитированием
Старый 27.04.2009, 11:48   #4
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,893
По умолчанию

Цитата:
Сообщение от Лукманов Александр Посмотреть сообщение
у тебя наверно в Form1 свойство FormStyle стоит fsStayOnTop. Поставь Normal
Нет Form fmNormal видимо в этой форме где-то в другом месте косяк, она все формы собой закрывает.
Можно конечно поставить fsStayOnTop у Form2, но в этом случае окна с ошибками появляются позади Form2.
P.S. И вот что самое странное при запуске приложения Form2 отображается быстрее Form1.
Изображения
Тип файла: jpg Step1.jpg (52.1 Кб, 140 просмотров)
Тип файла: jpg Step2.jpg (44.5 Кб, 134 просмотров)

Последний раз редактировалось Shouldercannon; 27.04.2009 в 12:11.
Shouldercannon вне форума Ответить с цитированием
Старый 27.04.2009, 12:10   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Ну тогда код в студию )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.04.2009, 14:02   #6
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
По умолчанию

Цитата:
Сообщение от Shouldercannon Посмотреть сообщение
В двух проектах все нормально было, в третьем проблема. Form1 перекрывает Form2, хотя по условию Form2 появляется после Form1.
Во всех трех приложениях Form2 вызывается так
Код:
if (Edit1.Text='') then begin
Form2.Show;
Exit;
end else
Как сделать чтобы Form1 не закрывала собой Form2?

P.S. ShowModal не предлагать.
Возможно у тебя Edi1.text по умолчанию пустой, и тогда у тебя на Form1create (при запуске приложения) вызывается Form2Show, а потом отрабатывает Form1Show. Поэтому и перекрвает. Попробуй поставить этот код на Form1 в onShow. Тогда сначала появиться Form1, а потом Form2.
По ракетам и хоккею - Россияне всех сильней!
Ky3Heu, вне форума Ответить с цитированием
Старый 27.04.2009, 14:21   #7
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,893
По умолчанию

Цитата:
Сообщение от Ky3Heu, Посмотреть сообщение
Возможно у тебя Edi1.text по умолчанию пустой, и тогда у тебя на Form1create (при запуске приложения) вызывается Form2Show, а потом отрабатывает Form1Show. Поэтому и перекрвает. Попробуй поставить этот код на Form1 в onShow. Тогда сначала появиться Form1, а потом Form2.
Form2.Show вызывается в самом себе тоесть в Form2 по событию OnCreat
Shouldercannon вне форума Ответить с цитированием
Старый 27.04.2009, 15:05   #8
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Может быть кнопки BitBtn используешь, а у них ModalResult:=mrOk;
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 27.04.2009, 15:34   #9
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,893
По умолчанию

Цитата:
Сообщение от ArtInt Посмотреть сообщение
Может быть кнопки BitBtn используешь, а у них ModalResult:=mrOk;
Да есть кнопки BitBtn, но у всех свойство ModalResult:=mrNone;
Shouldercannon вне форума Ответить с цитированием
Старый 27.04.2009, 15:39   #10
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
По умолчанию

Тогды высылай проект. Будем смотреть....
По ракетам и хоккею - Россияне всех сильней!
Ky3Heu, вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
первая буква в слове Cdevelop Общие вопросы C/C++ 2 17.03.2009 13:44
Первая форма приложения не главная Avron Общие вопросы Delphi 4 28.09.2007 12:02
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. vitalik007 Помощь студентам 1 25.09.2007 20:45
Какие изменения в системе нужно сделать чтобы установить ОС Linux как вторую операцио Ga-sergey Помощь студентам 7 09.04.2007 13:06
первая тема execom Софт 1 29.10.2006 01:15