|
|
|
Как обнилить владельца fsMDIChild формы?
|
|||
|---|---|---|---|
|
#18+
Имеется форма TFReference = class(TForm) с FormStyle := fsMDIChild. Также в главной форме с FormStyle := fsMDIForm есть несколько приватных полей: Код: pascal 1. 2. 3. 4. 5. 6. Так создается экземпляр MDI формы с соответсвующим заголовком: Код: pascal 1. 2. 3. 4. 5. и так для всех других FMDIRef... Закрытие MDI формы: Код: pascal 1. 2. 3. 4. Вопрос: как в момент закрытия MDI формы сделать так, чтобы FMDIRefKinds и т.п. стало равным nil ? Т.е. как об nil ить создателя MDI формы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2018, 10:57 |
|
||
|
Как обнилить владельца fsMDIChild формы?
|
|||
|---|---|---|---|
|
#18+
учусьвсюжизнь, Я бы заслал сообщение... Примерно так в главной форме: Код: pascal 1. 2. И в процедуре MDIChildClose обnilивал нужные переменные. Ну, и в MDIChild например в Destroy: Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2018, 11:06 |
|
||
|
Как обнилить владельца fsMDIChild формы?
|
|||
|---|---|---|---|
|
#18+
Чушь написал. Ссылка на форму и создатель формы не имеют ничего общего. Можешь при создании формы передавать ссылку на эту переменную а в деструкторе формы её обнулять. Хотя это изначально кривой дизайн ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2018, 12:00 |
|
||
|
Как обнилить владельца fsMDIChild формы?
|
|||
|---|---|---|---|
|
#18+
white_niggerэто изначально кривой дизайн Хорошо. Как тогда без перебора всех MDIChild Код: pascal 1. и идентификации нужного окна по имени или еще какому признаку узнать, что нужная форма уже открыта и BringToFront ее, а если нет, то создать ее? А так, по переменной сразу было бы видно - открыта (не nil) или нет (nil) форма. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2018, 13:16 |
|
||
|
Как обнилить владельца fsMDIChild формы?
|
|||
|---|---|---|---|
|
#18+
А потом появятся ещё стопицот нужных форм и для них потребуется стопицот переменных... Сделай виртуальную функцию у базового класса MDIChild, которая вернёт свой идентификатор. И функцию которая вернет/активирует MDIChild по этому идентификатору. И да, именно проходом по MDIChildCount ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2018, 15:19 |
|
||
|
Как обнилить владельца fsMDIChild формы?
|
|||
|---|---|---|---|
|
#18+
white_nigger, не появятся :) Всем спасибо за науку, реализовал хотелку через встроенный в VCL механизм Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2018, 15:28 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39670655&tid=2040653]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
172ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 519ms |

| 0 / 0 |
