| 
| 
 | Вопрос # 4 108/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты!
 Решил сделать красивую панель меню
 Проблема возникла при использовании TMS компонентов.
 Суть:
 Добавил на форму №1.1 (которую создаю из формы №1 и отображаю как ShowModal)
 DockPanel: TAdvDockPanel; В нее добавил два TAdvToolBar'а:
 1- меню с выпадающими списками (обчное как во всех прогах)
 2- панель со значками быстрого вызова
 
 Проблема в следующем. При закрытии дочерней формы №1.1 все нормально, а когда закрываю форму 1, вылетает ошибка (рис. прикреплен) и при нажатии на Break  ставиться точка в нижеуказанной процедуре на строке
 Result := CallWindowProc(FDefWndProc, WindowHandle, Msg, WParam, LParam);
 
 Так вот я заметил, что если эти TAdvToolBar'ы удалить, то ошибки не выкидывает.
 
 Делал вроде все как в описании, но что не так?
 
 Спасибо
 К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса) Приложение:Переключить в обычный режим procedure TWinControl.DefaultHandler(var Message);{$IF DEFINED(CLR)}var  Msg: TMessage;{$IFEND}begin  if WindowHandle <> 0 then  begin{$IF DEFINED(CLR)}    Msg := UnwrapMessage(TObject(Message));    with Msg do{$ELSE}    with TMessage(Message) do{$IFEND}    begin      if (Msg = WM_CONTEXTMENU) and (Parent <> nil) then      begin        Result := Parent.Perform(Msg, WParam, LParam);        if Result <> 0 then Exit;      end;      case Msg of        WM_CTLCOLORMSGBOX..WM_CTLCOLORSTATIC:          Result := SendMessage(LParam, CN_BASE + Msg, WParam, LParam);        CN_CTLCOLORMSGBOX..CN_CTLCOLORSTATIC:          begin            SetTextColor(WParam, ColorToRGB(FFont.Color));            SetBkColor(WParam, ColorToRGB(FBrush.Color));            Result := FBrush.Handle;          end;      else{$IF NOT DEFINED(CLR)}        if Msg = RM_GetObjectInstance then          Result := Integer(Self)        else{$IFEND}          Result := CallWindowProc(FDefWndProc, WindowHandle, Msg, WParam, LParam);      end;      if Msg = WM_SETTEXT then        SendDockNotification(Msg, WParam, LParam);    end;  end  else    inherited DefaultHandler(Message);end; 
|  |   Вопрос задал: Aндрей (статус: 1-ый класс)Вопрос отправлен: 30 апреля 2010, 13:17
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 1; последнее сообщение — 30 апреля 2010, 17:38; участников в обсуждении: 1. 
|   | min@y™ (статус: Доктор наук), 30 апреля 2010, 17:38 [#1]:Похоже, этот вопрос - для авторов TMS компонентов. Хрен их знает, что они там понаписали. Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |