| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Отрисовывание tPanel |
| Автор: Urvin 2.4.2008, 20:25 | ||
| Друзья! Есть довольно сложное приложение, где в каждый момент времени на основной рабочей области показывается какой-либо один или группа элементов управления. Есть у меня список lstList типа VirtualTreeView, он растянут по размерам рабочей области. Есть pnlPanel - фиксированных размеров панель с лежищими на ней элементами управления - строки ввода, комбобоксы... Панель насильно фиксируется по центру рабочей области. По нажатии кнопки происходит следующее действие:
Случается так, что список прячется, а панель не открывается. Скорее всего, просто не прорисовывается, т.к. если я сверну-разверну приложение, то панелька появляется и работает в нормальном режиме. Как заставить панельку насильно отрисовываться на форме? как показала практика, обычное Refresh-Repaint чет не очень помогают...или я не умею их готовить( http://funkyimg.com/viewer.php?img=46236proga.jpg |
| Автор: Wolfgan 3.4.2008, 09:09 | ||
| Есть несколько вариантов: 1. Проверь у списка и у панели одни и те же родители? Т.е. на одном компоненте они располагаются ли 2. Попробуй изменить так: положи на форму еще две TPanel. В одну положи список, в другую инструменты. И управляй этими панелями, а не списком. 3. Попробуй после показа панели или списка обновить полностью форму. Т.е.:
|
| Автор: Urvin 3.4.2008, 11:55 |
| 1. Да, на одной форме 2. Попробую 3. Пробовал, никак |
| Автор: X-Vlad 3.4.2008, 13:53 | ||||
можна попробовать
|
| Автор: MetalFan 3.4.2008, 15:54 |
| попробуй это повторить в тестовом приложении и выложи сюда. |
| Автор: lukas 3.4.2008, 19:27 | ||
зачем же насильно, когда можно просто... Panel1.Anchors := []; З.Ы. Попробуй поиграться со свойством ComponentStyle... |