Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.12;
Скачать: CL | DM;

Вниз

Трабла с формами   Найти похожие ветки 

 
vicky ©   (2004-08-25 18:18) [0]

Помогите разобраться плиз...
Есть 2 формы типа fsNormal: одна visible:=true, другая=false, по нажатию кнопки первой формы, свойство visible второй устанавливается true. После закрытия этой второй формы и повторного нажатия на эту кнопку возникает ошибка... Наверняка я тут что-то не так делаю, и надо использовать может быть какое-нибудь другое свойство или метод. Поскажите, плиз...


 
antonn ©   (2004-08-25 18:20) [1]

Show и hide почему не используете?
Щас попробую ваш глюкс...


 
antonn ©   (2004-08-25 18:24) [2]

Странно... А у меня все работает. Может у тебя ресурсы создает и не освобождает? компонент какой в реале создает?


 
vicky ©   (2004-08-25 18:29) [3]

Thanx...с Show, все заработало нормально, только вот где Hide писать:

TInfoForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Hide;
end;

???


 
Ega23 ©   (2004-08-25 18:31) [4]

После закрытия этой второй формы и повторного нажатия на эту кнопку возникает ошибка...

1. Каким образом происходит закрытие?
2. Какая ошибка возникает? Не Access Violation ли?
3. Каким образом создаются формы?


 
Ega23 ©   (2004-08-25 18:32) [5]

vicky ©   (25.08.04 18:29) [3]

"Гыы, сынку, LOL!!!  :-)" (с)

Почитай хелп про событие OnCloseQuery.


 
vicky ©   (2004-08-25 18:43) [6]

2 Ega23 ©
Почитала про property OnCloseQuery: TCloseQueryEvent; и что? мне не надо никакого диалога при закрытии. Просто не знаю где procedure Hide; писать, вот и все...


 
Ega23 ©   (2004-08-25 18:49) [7]

Ты меня извини, не в обиду сказано будет, ИМХО у тебя серьёзная каша в голове.

Давай по-порядку.
Насколько я понял, задача у тебя следующая: Есть некая главная фома, есть ещё одна какая-то. По нажатию кнопки на главной форме должна показываться вторая, по закрытию второй фокус должен вернуться на главную, так?


 
vicky ©   (2004-08-25 18:52) [8]

Да я и не обижаюсь, с Delphi общаюсь практически первый раз и нет времени сидеть и теоретически подготавливаться...
Да задача именно такая, фокус тут не главное, главное, чтобы при повторном нажатии эта вторая форма повторно появлялась...


 
vicky ©   (2004-08-25 18:53) [9]

Даже более того: начет каши в голове с тобой полностью согласна и начинаю тихо ненавидеть Delphi, так толком и не познакомившись...


 
Ega23 ©   (2004-08-25 18:58) [10]

и нет времени сидеть и теоретически подготавливаться...

Ну вот так бросаться словами не стоит, у всех тен времени, однако народ сидит и разбирается.  :о)

Самый простой выход из ситуации: Из файла проекта (.dpr который) выбрасываем Application.CreateForm(TForm2, Form2);

Теперь в обработчике той несчастной кнопки пишем следующее:

procedure TForm1.Button1Click(Sender : TObject);
begin
Application.CreateForm(TForm2, Form2);
try
 Form2.ShowModal;
finally
 Form2.Free;
 Form2:=nil;
end;
end;


Должно заработать.


 
Ega23 ©   (2004-08-25 18:59) [11]

и начинаю тихо ненавидеть Delphi, так толком и не познакомившись...

Не боись, C++ ещё страшнее!   :о)


 
vicky ©   (2004-08-25 19:03) [12]

Thanx...надеюсь с С++ не придется "так близко сталкиваться" ...


 
Ega23 ©   (2004-08-25 19:04) [13]

Получилось?


 
vicky ©   (2004-08-25 19:10) [14]

Да, все нормально пашет...;)))



Страницы: 1 вся ветка

Текущий архив: 2004.09.12;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.028 c
1-1093346764
mouse_web
2004-08-24 15:26
2004.09.12
Как поставить QuickReport ?


1-1093886097
hamster
2004-08-30 21:14
2004.09.12
asm


3-1092390857
HanIP
2004-08-13 13:54
2004.09.12
Процедура довавления записи


14-1092922960
SMT
2004-08-19 17:42
2004.09.12
Четкие изображения экрана в Help-файле


4-1090878975
g-l-u-k
2004-07-27 01:56
2004.09.12
Сравнение файлов на winapi и поиск различий