Chukotka
Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Создаю простейшее приложение: форма + DockingManager + DockSite. У DockingManager'a установлены опции doTabContainerCanClose и doFreeOnClose; В рантайме создаю DockPanel, вот текст процедуры: Код: const Id: integer = 0; var Dck: TdxDockPanel; begin Dck := TdxDockPanel.Create(Self); Dck.Name := Format('Name%d', [Id]); Dck.Caption := Format('Dock panel %d', [Id]); Inc(Id); Dck.MakeFloating; end; | Запускаю прогу, создаю две панели, перетаскиваю одну на другую - формируется TabContainer в отдельной форме. И вот тут, если попытаться закрыть эту форму - вылетает ошибка "Index out of bounds". Вылетает здесь (dxDockControl.pas, строка 6599): Код: procedure TdxTabContainerDockSite.DoClose; var I: Integer; begin if (doTabContainerCanClose in ControllerOptions) then begin BeginUpdateLayout; try for I := ChildCount - 1 downto 0 do begin if Children[ I ].Visible then <--------- тут идет обращение при ChildCount = 0 Children[ I ].DoClose; | Delphi 2007, DevX 42 Теперь вопрос: кто-то в курсе - в более поздних версиях девок это пофиксено? Больно неохота сейчас переустанавливать все, работа горит. Или может кто сможет протестить это у себя на более поздних версиях девок - сообщите результат и номера версий Delphi & Devx, буду весьма признателен. | Всего записей: 428 | Зарегистр. 01-11-2006 | Отправлено: 05:32 24-09-2009 | Исправлено: Chukotka, 13:28 24-09-2009 |
|