|
Вопрос # 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. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|