Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как написать условие


Страницы:   1 2

alexdn ©   (2012-08-25 14:33:00) 

Если form4 существует, то.. if form4.visible не подходит, т.к. форма может быть закрыта.


Inovet   (2012-08-28 08:48:00) [1]

> [28] AV ©   (28.08.12 01:29)
> > А если у тебя две таких формы?
>
> указатель все равно ссылается на один экземпляр.

Ну так там же куда-то "терятются" формы.


AV   (2012-08-28 01:29:00) [2]

конкретно form4 - указатель, указатель хватит просто проверить на nil

> if form4 <> nil then



> А если у тебя две таких формы?

указатель все равно ссылается на один экземпляр.

А если стоит задача найти все формы класса TForm4, то я бы выбрал

> for i := 0 to Screen.FormCount do if Screen.Forms[i] is
> TForm4 then


turbouser   (2012-08-26 13:06:00) [3]


> Dennis I. Komarov ©   (26.08.12 11:34) [26]


a) это объясняет проблему. в прочем, ты прав.
б ) не совсем
в) +1


Dennis I. Komarov   (2012-08-26 11:34:00) [4]


> кури MDI.

а) У ТС нет ни слова о MDI.
б) Это лишь объясняет, как он ее "потерял".
в) В этом случае, вообще не вижу смысла хранить указатель.


turbouser   (2012-08-25 21:27:00) [5]


> Dennis I. Komarov ©   (25.08.12 19:32) [24]

кури MDI.


Dennis I. Komarov   (2012-08-25 19:32:00) [6]

Зачем нужна Form4 и как ты ее потерял?
Да, еще что значит "существует", потому как:
Если form4 существует, то.. if form4.visible не подходит, т.к. форма может быть закрыта.?


turbouser   (2012-08-25 19:01:00) [7]


> Медвежонок Пятачок ©   (25.08.12 18:22) [21]

хз. сырцов дама нет, дельфей нет :) каааааайф


Dimka Maslov   (2012-08-25 18:38:00) [8]

for i := 0 to Screen.FormCount do if Screen.Forms[i] is TForm4 then Screen.Forms[i].Close;


Медвежонок Пятачок   (2012-08-25 18:22:00) [9]

Новенькое, ага.
Примерно с первой версии дельфы.


turbouser   (2012-08-25 18:03:00) [10]

да и CreateForm - эт чета новенькое?


turbouser   (2012-08-25 18:02:00) [11]

form4.free = c.free


turbouser   (2012-08-25 18:01:00) [12]

var C:tcomponent;
c:=Application.findcomponent('form4');
if Assigned(c) then
form4.free else
Application.CreateForm(TForm4, Form4);
end;
как-то так.


turbouser   (2012-08-25 17:56:00) [13]


> alexdn ©   (25.08.12 17:29) [16]

православное Free ^))


alexdn   (2012-08-25 17:29:00) [14]

> turbouser ©   (25.08.12 16:29) [13]
> Хотя, кое где у меня есть и убийство и пересоздание. Да.
Вот, убийство и пересоздание и было -
if Application.findcomponent('form4')<>Nil then begin
 form4.Close;
Application.CreateForm(TForm4, Form4);
end;


turbouser   (2012-08-25 17:21:00) [15]


> Inovet ©   (25.08.12 17:11) [14]


> Да ну, почему бы не открыть несколько одниаковых форм с
> разными данными одновременно.

угу. и потом искать form4. а их там несколько.
если бы автор мог себе позволить иметь несколько одинаковых форм - вопроса бы не возникло. в прочем, неизвестно, как всегда, что там у тс..


Inovet   (2012-08-25 17:11:00) [16]

> [12] turbouser ©   (25.08.12 16:27)
> > Inovet ©   (25.08.12 15:50) [9]
>
> ССЗБ

Да ну, почему бы не открыть несколько одниаковых форм с разными данными одновременно.


turbouser   (2012-08-25 16:29:00) [17]


>  Inovet ©   (25.08.12 15:50) [9]

Хотя, кое где у меня есть и убийство и пересоздание. Да.


turbouser   (2012-08-25 16:27:00) [18]


> Inovet ©   (25.08.12 15:50) [9]

ССЗБ


Amir   (2012-08-25 16:12:00) [19]

Поместить после создания формы ссылку на нее в TList
Проверять по условию
if TForm(List.items[i])  is TForm4 then ...


brother   (2012-08-25 16:04:00) [20]

имхо if form4 <> nil then ...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо