|
|
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. PopupWnd.PopupHeight возвращает 0 (ноль). Задача простая. Узнать размеры всплывающего окна, чтобы запомнить их при закрытии формы и при создании - восстановить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 14:20 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
X11PopupWnd.PopupHeight возвращает 0 (ноль). А PopupWnd.Height ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 18:43 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
PopupWnd.Height возвращает 0 PopupWnd.Width возвращает -1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 18:48 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
Несколько раз проверил процедуру ClosePopupEdit(), ну т.е. несколько раз открыл и закрыл всплывающее окно, постоянно меняя его размер, в общем, там есть значения у PopupWnd.PopupHeight/PopupWidth, но они там какие-то левые, вернее, там значения от предыдущего размера. Т.е. чтобы узнать размер, нужно 2 раза открыть и закрыть окно. Надеюсь, понятно объяснил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 18:54 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
Привет. А что содержит PopupWnd.ClientRect и PopupWnd.ViewInfo? В смысле, PopupWnd.ViewInfo.Bounds и PopupWnd.ViewInfo.ClientRect? Еще можно воспользоваться GetWindowPlacement/SetWindowPlacement. P.S. Проверить свой совет смогу только завтра, на работе. С уважением, Polesov. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 19:33 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
X11, когда столько проблем возникает с одной задачей и компонентами -- стоит задуматься, а правильно ли было выбрано решение. Напомню, что высота попапа динамическая и зависит от количества записей и разрешенного количество для показа (если это комбобокс). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:11 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
PolesovА что содержит PopupWnd.ClientRect В момент свёртывания вроде бы то, что доктор прописал. Потому что там правильный родитель: Код: pascal 1. т.е. здесь в качестве cxGroupBox1. Parent правильная компонента. А вот в момент закрытия формы, когда нужно сохранить настройки в базу, не ме могу понять, что сюда правильно передать: Код: pascal 1. если подставляю cxGroupBox1.Parent, то в качестве родителя выступает уже сама форма TForm1, а не всплывающее окно вертикальной сетки. Кстати, таких проблем нет, если TcxPopupEdit, как самостоятельная отдельная компонента лежит на форме. С cxGrid`ом не экспериментировал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:17 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
JaDiНапомню, что высота попапа динамическая и зависит от количества записей и разрешенного количество для показа (если это комбобокс). У меня во всплывающем окне лежит cxGroupBox, а в нём уже другие компоненты, т.е. такая себе мини-форма с таблицей/деревом и кнопками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:19 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
X11, т.е. при попапе групбокс не помещается и его надо подобрать под ширину попапа, который всплывает в полях с разной шириной. Верно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:23 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
Нет, с размерами там всё норм - попап нормально подстраивает под себя cxGroupBox. Нужно при закрытии окна (TForm) сохранить те размеры всплывающего окна (попапа), которые пользователь установил и при открытии окна, соответственно, восстановить размеры попапа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:26 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
На событии Properties.CloseUp можно получить ширину окна через popupEdit.PopupWindow.Width ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:40 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
JaDi, т.е. сохранять данные по контролу во временное значение, а когда вся форма закроется -- сохранять уже в базу (или куда там идут эти настройки). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:41 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
JaDiНа событии Properties.CloseUp можно получить ширину окна через popupEdit.PopupWindow.Width ну это я понял, но хотелось при закрытии окна... осталось понять, как правильно восстановить размеры всплывающего попапа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:54 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
X11, при закрытии окна попап был давно уже уничтожен... Даже если окно закрывается, когда этот попап показывается -- ничего не мешает проверить этот момент и если попап активен, то брать значение не из последнего сохраненного, а прямо из него. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 20:57 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
Вот код, который сохраняет и восстанавливает ширину попапа (с использованием доп хака для обновления окна): Код: pascal 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. 37. 38. 39. 40. 41. 42. 43. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 21:13 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2018, 21:15 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
JaDi Код: pascal 1. Cannot access protected symbol TcxCustomDropDownEdit.PopupWindow ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2018, 12:51 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
X11JaDi Код: pascal 1. Cannot access protected symbol TcxCustomDropDownEdit.PopupWindow Значит более новая версия девок. Можно вот так попробовать: TcxPopupWindowAccess((Sender as TcxPopupEdit)).PopupWindow.Width := LastPopupWidth; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2018, 13:52 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2018, 15:48 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
X11, значит где-то косяк... TcxPopupWindowAccess = class(TcxCustomEditPopupWindow) надо в интерфейсной части объявлять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2018, 15:56 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
посмотрел в исходниках, как объявлен " TcxCustomEditPopupWindow = class(TdxCustomIncrementalFilteringPopupWindow)" там свойства PopupWindow вообще нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2018, 16:06 |
|
||
|
Узнать размер TcxPopupEditPopupWindow
|
|||
|---|---|---|---|
|
#18+
Такс..... вот так работает Прямо при создании формы Код: pascal 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2018, 16:10 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39703731&tid=2040409]: |
0ms |
get settings: |
4ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
50ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
71ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 380ms |

| 0 / 0 |
