Alex47
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору samusev Для popup разработчики QGrid запускают свой цикл обработки виндовых сообщений (в cxcontainer procedure TcxCustomPopupWindow.Popup) Поэтому, если кликнуть мышью в сторону от calcedit, можно в результате запуска какого-то вашего обработчика событий испортить контекст объекта для которого был запущен цикл обработки: while Visible and not Application.Terminated do begin if PeekMessage(Msg, 0, WM_SYSKEYDOWN, WM_SYSKEYDOWN, PM_NOREMOVE) then case Msg.wParam of Windows.VK_MENU, Windows.VK_RETURN, Windows.VK_SPACE: PeekMessage(Msg, 0, Msg.message, Msg.message, PM_REMOVE); end; if ModalResult <> mrNone then if CloseQuery then ModalCloseUp else ModalResult := mrNone; Application.HandleMessage; end; Тогда проверка на visible будет выполняться для несуществующего объекта, следовательно пойдёт вылет. Попробуйте отключить всё имеющиеся у Вас в проекте обработчики (на копии) и посмотрите результат. | Всего записей: 366 | Зарегистр. 20-03-2003 | Отправлено: 14:44 08-12-2006 | Исправлено: Alex47, 19:45 08-12-2006 |
|