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

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

Как закрыть модальное окно?


Страницы:   1 2 3

PZ ©   (2006-12-25 12:51:00) 

У меня модальная форма без заголовка:
BorderStyle = bsNone
KeyPreviw = True

Всю площадь формы закрывает компонент Bevel1, а его
полностью закрывает метка Label1
Пробую два варианта закрыть форму - не закрывается.
Как же её можно закрыть? Подскажите, пожалуйста.

procedure TForm1.FormDblClick(Sender: TObject);
begin
 Form1.Close;
end;

procedure TForm1.Label1DblClick(Sender: TObject);
begin
 Form1.Close;
end;


alex_***   (2006-12-25 15:07:00) [21]

ну так скажи, попадаешь или нет? до брейк поинта доходишь?


PZ   (2006-12-25 15:00:00) [22]

> [21] alex_*** ©   (25.12.06 14:52)

Label растянут по всей форме allClient. Ну как не попасть?


novill   (2006-12-25 14:57:00) [23]

> [22] PZ   (25.12.06 14:55)

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


Anatoly Podgoretsky   (2006-12-25 14:56:00) [24]

Не понимаешь и ладно, а понимаешь ли ты то, что указано ранее, что переменная Form1 не нужна?


PZ   (2006-12-25 14:55:00) [25]

> [20] Anatoly Podgoretsky ©   (25.12.06 14:38)

Я, честное слово, не понимаю. что от меня требуется. Весь код проекта - он довольно большой, приводить нет возможности. А все, что касается моего вопроса я, кажется, сообщил.


alex_***   (2006-12-25 14:52:00) [26]


> Я тоже так думаю, но не решает ...

ты туда попадаешь вообще?


Anatoly Podgoretsky   (2006-12-25 14:38:00) [27]

> PZ  (25.12.2006 14:21:14)  [14]

О переменной с именем Form1
Нормальный код ты категорически отказываешься приводить, а гадать уже я не хочу.


PZ   (2006-12-25 14:37:00) [28]

> [18] alex_*** ©   (25.12.06 14:30)

Я тоже так думаю, но не решает ...


alex_***   (2006-12-25 14:30:00) [29]

тогда dblclick по лабелу решит проблему


PZ   (2006-12-25 14:28:00) [30]

> [16] alex_*** ©   (25.12.06 14:25)

Вы не внимательно прочитали мой вопрос: форма без заголовка


alex_***   (2006-12-25 14:25:00) [31]

а нажатие на крестик в верх. правом углу не закрывает форму? (таймер не влияет на закрытие)


PZ   (2006-12-25 14:23:00) [32]

Может быть таймер не дает закрывать эту форму?


PZ   (2006-12-25 14:21:00) [33]

Исправил mpOk -> mrOK

> [11] Anatoly Podgoretsky ©   (25.12.06 13:43)
> [1] Anatoly Podgoretsky ©   (25.12.06 13:06)
> А чей у тебя Form1 ?

Не понял, о какой переменной идет речь?
А Form1 - действительно модальная форма, которую мне надо закрыть, но она не включена в проект, а создается динамически в главной форме,  по таймеру:

     If {некоторое условие} then
         Try
           Form1 := TForm1.Create(Owner);
           ......
           Form1.ShowModal;
         Finally
           FreeAndNil(Form1);
         End;


Anatoly Podgoretsky   (2006-12-25 13:59:00) [34]


> а у меня все равно работает

У тебя наверно правильный Form1
Только нафиг он совсем нужен?


novill   (2006-12-25 13:46:00) [35]

> Form1.ModalResult := mpOk;  // Error Undeclared Identifier

это наверное от того что правильно писать mrOk


Anatoly Podgoretsky   (2006-12-25 13:43:00) [36]

> PZ  (25.12.2006 13:35:08)  [8]

Не верю. При том я не про форму спрашивал, а про переменную.


novill   (2006-12-25 13:43:00) [37]

> [7] PZ   (25.12.06 13:34)

а у меня все равно работает


Германн   (2006-12-25 13:43:00) [38]


> Form1.ModalResult := mpOk;  // Error Undeclared Identifier

mrOK
И Close после этого не нужен


PZ   (2006-12-25 13:35:00) [39]

> [6] Anatoly Podgoretsky ©   (25.12.06 13:23)

У меня другой формы с тким именем нет


PZ   (2006-12-25 13:34:00) [40]

Нет втрой вариант не работает

> [4] Ega23 ©   (25.12.06 13:16)

procedure TForm1.Label1DblClick(Sender: TObject);
begin
Form1.ModalResult := mpOk;  // Error Undeclared Identifier
Form1.Close;
end;


Страницы:   1 2 3

Наверх

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