Форум: "Основная";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизТрабла с формами Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.035 c