--- title: "Интерфейс ksDocumentFrameNotify/IDocumentFrameNotify" type: interface api: [api7] tags: [interface, api7, ksdocumentframenotify] sources: - ksdocumentframenotify.html --- *API интерфейсов. Версия 7 > Интерфейсы событий * ## Интерфейс ksDocumentFrameNotify/IDocumentFrameNotify | ksDocumentFrameNotify | - интерфейс Automation, | | --- | --- | | IdocumentFrameNotify | - интерфейс COM | Интерфейс событий для окна документа (клавиатура, мышь, события по отрисовке документа) Позволяют контролировать состояние окна документа. Источником событий для подписки на данный интерфейс является объект IDocumentFrame - интерфейс окна документа. В COM источником для подписки является указатель на документ. Дополнительный параметр при подписке задает интерфейс окна IDocumentFrame, для которого предназначен данный интерфейс событий. ksDocumentFrameNotify, IDocumentFrameNotify - события ## Activate - Активизация окна BOOL Activate(); Синтаксис COM: ``` BOOL Activate(); Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. ## AddGabarit - Рассчитывается общий габарит окна Синтаксис Automation: ``` BOOL AddGabarit (IGabaritObject * gabObj); ``` Синтаксис COM: ``` BOOL AddGabarit (IUnknown* gabObj); Входные параметры: gabObj - указатель на интерфейс IGabaritObject вспомогательных данных для изменения габарита документа. Возвращаемое значение: - Не используется. ``` Примечание: 1. Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. 2. Если на данное событие подписалось несколько библиотек, то заданные ими прямоугольники суммируются. ## BeginPaint - Начало отрисовки документа Синтаксис Automation: ``` BOOL BeginPaint (IPaintObject* paintObj); ``` Синтаксис COM: ``` BOOL BeginPaint (IUnknown* paintObj); Входные параметры: paintObj - указатель на интерфейс IPaintObject вспомогательных данных для отрисовки документа. Возвращаемое значение: FALSE - запретить отрисовку документа. ``` Примечание: 1. Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. 2. Если событие вернет значение FALSE, то КОМПАС-3D не будет отрисовывать документ; библиотека в этом случае должна сама выполнить всю отрисовку, событие ClosePaint посылаться не будет. ## BeginPaintGL - Начало создания листа в контексте OpenGL Синтаксис Automation: ``` BOOL BeginCreateGLList (ksGLObject* glObj, long drawMode); ``` Синтаксис COM: ``` BOOL BeginCreateGLList (long drawMode); Входные параметры: glObj - указатель на интерфейс ksGLObject вспомогательных данных для создания листа в контексте OpenGL; используется при работе под управлением внешнего контроллера, drawMode - режим отображения документа-модели KDocument3DDrawMode. Возвращаемое значение: TRUE - модель продолжает отрисовываться, FALSE - запретить перерисовывать модель. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. ## BeginPaintTmpObjects - Начало отрисовки временных объектов(фантомов) Синтаксис Automation: ``` BOOL BeginPaintTmpObjects(); ``` Синтаксис COM: ``` BOOL BeginPaintTmpObjects(); Возвращаемое значение: FALSE - запретить отрисовку временных объектов. ``` Примечание: Событие можно получить в 2D документе и использовать для самостоятельной отрисовки временных объектов функциями OpenGL ## CloseFrame - Закрытие окна Синтаксис Automation: ``` BOOL CloseFrame(); ``` Синтаксис COM: ``` BOOL CloseFrame(); Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. ## ClosePaint - Конец отрисовки документа Синтаксис Automation: ``` BOOL ClosePaint (IPaintObject* paintObj); ``` Синтаксис COM: ``` BOOL ClosePaint (IUnknown* paintObj); Входные параметры: paintObj - указатель на интерфейс IPaintObject вспомогательных данных для отрисовки документа. Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. ## ClosePaintGL - Окончание создания листа в контексте OpenGL Синтаксис Automation: ``` BOOL CloseCreateGLList (ksGLObject* glObj, long drawMode); ``` Синтаксис COM: ``` BOOL CloseCreateGLList (long drawMode); Входные параметры: glObj - указатель на интерфейс ksGLObject вспомогательных данных для создания листа в контексте OpenGL; используется при работе под управлением внешнего контроллера, drawMode - режим отображения документа-модели KDocument3DDrawMode. Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. ## ClosePaintTmpObjects - Конец отрисовки временных объектов(фантомов) Синтаксис Automation: ``` BOOL ClosePaintTmpObjects(); ``` Синтаксис COM: ``` BOOL ClosePaintTmpObjects(); Возвращаемое значение: - не используется. ``` Примечание: Событие можно получить в 2D документе и использовать для дорисовки временных объектов функциями OpenGL ## Deactivate - Деактивация окна Синтаксис Automation: ``` BOOL Deactivate(); ``` Синтаксис COM: ``` BOOL Deactivate(); Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. ## MouseDblClick - Двойной щелчок кнопкой мыши Синтаксис Automation: ``` BOOL MouseDblClick (short nButton, short nShiftState, long x, long y); ``` Синтаксис COM: ``` BOOL MouseDblClick (short nButton, short nShiftState, long x, long y); Входные параметры: nButton - тип кнопки (LEFT_BUTTON, RIGHT_BUTTON или MIDDLE_BUTTON), nShiftState - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK), х,у - координаты в экранных пикселах. Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. Значения системных кнопок, допустимых в комбинации параметра nShiftState: | SHIFT_MASK | 0x01 | | --- | --- | | CTRL_MASK | 0x02 | | ALT_MASK | 0x04 | Значения типов кнопок мыши для параметра nButton: | LEFT_BUTTON | 0x01 | | --- | --- | | RIGHT_BUTTON | 0x02 | | MIDDLE_BUTTON | 0x04 | ## MouseDown - Нажатие кнопки мыши Синтаксис Automation: ``` BOOL MouseDown (short nButton, short nShiftState, long x, long y); ``` Синтаксис COM: ``` BOOL MouseDown (short nButton, short nShiftState, long x, long y); Входные параметры: nButton - тип кнопки (LEFT_BUTTON, RIGHT_BUTTON или MIDDLE_BUTTON), nShiftState - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK), х,у - координаты в экранных пикселах. Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. Значения системных кнопок, допустимых в комбинации параметра nShiftState: | SHIFT_MASK | 0x01 | | --- | --- | | CTRL_MASK | 0x02 | | ALT_MASK | 0x04 | Значения типов кнопок мыши для параметра nButton: | LEFT_BUTTON | 0x01 | | --- | --- | | RIGHT_BUTTON | 0x02 | | MIDDLE_BUTTON | 0x04 | ## MouseMove - Перемещение мыши Синтаксис Automation: ``` BOOL MouseDown (short nShiftState, long x, long y); ``` Синтаксис COM: ``` BOOL MouseMove (short nShiftState, long x, long y); Входные параметры: nShiftState - комбинация нажатых системных клавиш (SHIFT_MASK, CTRL_MASK, ALT_MASK), х,у - координаты в экранных пикселах. Возвращаемое значение: - Не используется. ``` Примечание: 1. Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. 2. Значения системных кнопок допустимых в комбинации параметра nShiftState: | SHIFT_MASK | 0x01 | | --- | --- | | CTRL_MASK | 0x02 | | ALT_MASK | 0x04 | ## MouseUp - Отпускание кнопки мыши Синтаксис Automation: ``` BOOL MouseUp (short nButton, short nShiftState, long x, long y); ``` Синтаксис COM: ``` BOOL MouseUp (short nButton, short nShiftState, long x, long y); Входные параметры: nButton - тип кнопки (LEFT_BUTTON, RIGHT_BUTTON или MIDDLE_BUTTON), nShiftState - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK), х,у - координаты в экранных пикселах. Возвращаемое значение: - Не используется. ``` Примечание: Индекс события задан в перечислении событий окна документа ksDocumentFrameNotifyEnum. Значения системных кнопок, допустимых в комбинации параметра nShiftState: | SHIFT_MASK | 0x01 | | --- | --- | | CTRL_MASK | 0x02 | | ALT_MASK | 0x04 | Значения типов кнопок мыши для параметра nButton: | LEFT_BUTTON | 0x01 | | --- | --- | | RIGHT_BUTTON | 0x02 | | MIDDLE_BUTTON | 0x04 | ## MouseWheel - Вращение колеса мыши Синтаксис Automation: ``` BOOL MouseWheel( short NShiftState, short ZDelta, long X, long Y ); ``` Синтаксис COM: ``` HRESULT MouseWheel( short NShiftState, short ZDelta, long X, long Y, BOOL * Result ); Входные параметры: NShiftState - комбинация нажатых системных кнопок клавиатуры (SHIFT_MASK, CTRL_MASK, ALT_MASK)), ZDelta - приращение, X, Y - координаты в экранных пикселах. Возвращаемое значение: - Не используется. КOMPAS v24 ```