|
Поскажите по Anchor у объектов и From Resize
|
|||
---|---|---|---|
#18+
Привет! Такая ситуация: есть на форме PageFrame. Во время исполнения формы кол-во страниц может увеличиваться. Проблема в том, что при создании новой страницы все объекты на странице не анкоряццо :), т.е. если во время исполнения юзер увеличил форму в размерах, все объекты на _существующих_ страницах PageFrame-а ведут себя по соответствию с их св-вом Anchor, т.е. увеличиваются смещаются и т.п. Когда появляется новая страница на ней все объекты появляются в их изначальном положении и размере, т.е. на них как-бы не подействовало увеличение формы, оно и понятно - объекты тогда еще не существовали. Вопрос - как на добавляемой странице всем объектам сказать что форма изменилась в размерах чтобы те соответственно по св-ву Anchor себя сместили/изменили в размерах? Я это делал так: запоминаю текущие размеры формы, уменьшаю размеры формы до минимума, добавляю страницу, возвращаю форме размеры. Получается некрасиво и время от времени прога почему-то падает с жалобой на якобы нереальные размеры. Сейчас я сделал иначе - при добавлении страницы все размеры и положения объектов копируются (перебором всех объектов в цикле) с первой страницы (страница в классе), но опять проблема - время от времени программа падает с сообщением что мол линк на объект невалидный. Там у него как-то получается ссылка без точек, т.е. вместо PageFrame1.Page1.lbl1 получается типа PageFrame1Page1lbl1 и падение... мож это как-то попроще можно оформить? спасибо вфп9 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2008, 19:32 |
|
Поскажите по Anchor у объектов и From Resize
|
|||
---|---|---|---|
#18+
Я бы добавил в форму св-во, в котором храню нормальные размеры формы. А в ините листа проверка реалных размеров формы и нормальных размеров. При несовпадении - вызывать ресайз листа. "Сейчас я сделал иначе - при добавлении страницы все размеры и положения объектов копируются (перебором всех объектов в цикле) с первой страницы (страница в классе), но опять проблема - время от времени программа падает с сообщением что мол линк на объект невалидный. Там у него как-то получается ссылка без точек, т.е. вместо PageFrame1.Page1.lbl1 получается типа PageFrame1Page1lbl1 и падение..." У вас что-то в консерватории. Пользуйте авторВозвращается иерархия объекта для указанного объекта. Не доступна в режиме Design Time. SYS(1272, oObjectName) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2008, 09:11 |
|
Поскажите по Anchor у объектов и From Resize
|
|||
---|---|---|---|
#18+
Врядли там что-то по иерархии. Пришлось ввести проверку на существование аналогичного объекта на добавляемой странице, т.к. падения случались вроде бы именно там. Т.е. видимо ссылка в loThisPageChildObj получалась битая (без точек-разделителей) или m.loMainPageChildObj.Name возвращало хз че. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
А по поводу запоминать где-то размеры формы - именно так я и делал первым способом. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2008, 15:49 |
|
|
start [/forum/topic.php?fid=41&msg=35735288&tid=1586922]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 152ms |
0 / 0 |