![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| tolan96 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 22.12.2009 Репутация: нет Всего: нет |
Добрый вечер.
Имеем: 1) Контролл-контейнер. (GroupBox, Panel...) 2) Контроллы-наполнители. (Button, TextBox...) 3) Все это сделанное в дизайнере и нормально отображающееся. 4) Желание создавать всё это динамически в программе. 5) Неправильное расположение контроллов-наполнителей в контейнере, при динамическом создании. Вот порядок того, как всё это реализуется: а) Объявляю и вызываю конструкторы всех элементов. б) Вызываю SuspendLayout() для каждого контейнера (их у меня несколько) в) Задаю все параметры отображения и расположения всем контроллам. г) Вызываю ResumeLayout() (true, false). д) Трачу 2 657 нервных клеток, разглядывая контроллы имеющие неправильное расположение. Что делать? Какой должен быть порядок? Одними из контроллов-наполнителей являются Splitter'ы, Кажется основная проблема с ними.... Прижимаются к краю формы... P.S. Все параметры копировал из дизайнера, создавшего код автоматически. Это сообщение отредактировал(а) tolan96 - 24.1.2011, 18:09 |
|||
|
||||
| KelTron |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 8.10.2006 Где: Красноярск Репутация: 5 Всего: 38 |
Что не правильно отображается? Как должно быть правильно? Где код?
Без конкретики твоё сообщение равносильно "моя программа не работает". -------------------- Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог. Эвенгар Салладорский, основатель Школы Тьмы. |
|||
|
||||
| tolan96 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 22.12.2009 Репутация: нет Всего: нет |
Код выкладывать не буду - его очень много... ( это всё-таки определение контроллов ). Меня интересовал именно порядок действий. Правильный ли я соблюдал? Делал всё по аналогии Дизайнера.
А из ошибок отображения: Так было при дизайнере. Есть GroupBox, Splitter и Panel. Splitter, по координатам, находится между panel и groupBox. При создании в дизайнере всё отображалось правильно. При отображении после динамического создания splitter прилегает к верхнему краю. Panel прилегает к splitter'у, и соответственно все элементы расположенные на ней загорожены groupBox'ом... Так стало при динамическом создании. Это сообщение отредактировал(а) tolan96 - 24.1.2011, 20:00 |
|||
|
||||
| tolan96 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 22.12.2009 Репутация: нет Всего: нет |
Более внимательно посмотрел на то, что делается в дизайнере и начал делать инициализацию контроллов в точно таком же порядке (Раньше я его строил логически). В целом оказалось, что по порядок создания элементов обратный, т.е. сначала самый нижний(правый) элемент, а затем все по порядку к верхнему (левому краю). Так вначале создается panel, потом над ней втискивается splitter и в самом конце идет groupBox. Теперь всё выглядит приблизительно так как должно, но нужно еще немного доработать. ( Пропала некоторая функциональность при растяжении окна и перемещении splitter'a)
//=========================================== Просто забыл вызвать ResumeLayout() для TabPage... Теперь всё работает отлично. Спасибо! Это сообщение отредактировал(а) tolan96 - 25.1.2011, 10:26 |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |