Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
В форме в событии OnCreate выясняется, что форму по определенным условиям открывать не надо - как сделать так, что бы она не открывалась? Почему-то метод Close и modalresult не работают: -------------------------------------------------------- procedure TSexForm.SexFormCreate(Sender: TObject); begin If 1 < 2 then Close; If 1 < 2 then Modalresult:= 0; end -------------------------------------------------------- Как сделать что бы не открывалась? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:23 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Сделай проверку условия не в OnCreate, а в OnShow и там выполняй Close. Либо просто не показывай форму из другой формы при выполнении определенного условия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:30 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
пример привел неправильно. На самом деле так: -------------------------------------------------------- procedure TSexForm.SexFormCreate(Sender: TObject); begin If 1 > 2 then Close; If 1 > 2 then Modalresult:= 0; end -------------------------------------------------------- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:31 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
В OnCreate еще нечего закрывать - форма не открыта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:33 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
И в OnShow тоже не дает закрыть. Куда пихаться? В OnActivate ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:37 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
А что это за такое странное условие "ЕДИНИЦА БОЛЬШЕ ДВОЙКИ" ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:39 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Это я просто как пример привел. На самом деле там другое условие - и оно стопроцентно срабатывает - проверял по Showmessage(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:46 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
А нельзя ли проверять это условие перед показом формы. Вообще какой там код, откуда и как эта форма вызывается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 17:52 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Эта форма через ShowModal показывается из другой формы. Но из той, откуда она показывается, проверять условия не получится - слишком громоздко будет. Суть в том, что кады эта модальная форма открывается она делает запрос к БД и по его результатам заполняет свои поля, а если запрос к БД по каким-то причинам обламывается - то надо сделать так, что-бы форма просто не открывалась. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 18:05 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 19:11 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
А как в первую форму передать modalresult ? Т.е. если вторая форма не должна открыться - то модалрезулт=0, иначе - он принимает всяческие другие значения... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 19:47 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Можно вынести проверки и заполнение значений в отдельную процедурку этой же формы, а перед showmodal проверять Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 21:17 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
>А как в первую форму передать modalresult ? Ну так сделай не class procedure, а class function и присваивай ей результаты проверки/показа/чего хочешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 21:56 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Большое спасибочки! Кстати - в этом случае ведь после вызова из первой формы TSexForm.ShowForm; в отличие от TSexForm.ShowModal код в первой форме после вызова этого метода продолжит выполнение, собака.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 22:54 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
>код в первой форме после вызова этого метода продолжит выполнение ... в том случае, если в результате проверки условия в функции ShowForm не было выполнено f.ShowModal. Насколько я понял, так и должно быть по условию задачи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2003, 23:52 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Большое тебе мерси !!! Все работает... Блин - с этой 1С и с ее ПриОткрытии()/ПриЗакрытии() совсем забыл как пишутся настоящие программы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2003, 11:14 |
|
||
|
Опять туплю - как закрыть форму?
|
|||
|---|---|---|---|
|
#18+
Вообще-то более правильный ответ IMHO на поставленный вопрос - перекрытие ShowModal примерно так : Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2003, 11:35 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=2025&tid=2117558]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
55ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 259ms |
| total: | 445ms |

| 0 / 0 |
