}
>Здравствуйте Myth, 16.04.2001 06:46:51 вы писали: > >Действительно, изменение рамки размера предотвращается посредством перехвата >OnSetExtent, спасибо. > >Но вот с размером самого компонента проблема. >Структура Create следущая: > >BOOL CErrorDlgCtrl::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext) >{ > // TODO: Add your specialized code here and/or call the base class > > return CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); >} > >Пробовал изменять значение rect, не помогло, >в чем может быть дело? > > >>Здравствуйте Vasily, 16.04.2001 03:15:25 вы писали: >> >>>Привет всем, >>> >>>Пишу ActiveX, невидимый в рантайме, и хочу, чтобы в дизайнтайме невозможно было изменить его размер, >>>подобно любому невизуальному стандартному компоненту. Пробовал добавить следующий код в обработчик >>>OnSetObjectRects: >>> >>>BOOL CErrorDlgCtrl::OnSetObjectRects(LPCRECT lpRectPos, LPCRECT lpRectClip) >>>{ >>> RECT rcYourPosRect = *lpRectPos; >>> rcYourPosRect.right = rcYourPosRect.left + 40; >>> rcYourPosRect.bottom = rcYourPosRect.top + 40; >>> >>> RECT rcYourClipRect = rcYourPosRect; >>> >>> return COleControl::OnSetObjectRects(&rcYourPosRect, &rcYourClipRect); >>>} >>> >>>Этот код действительно запрещает изменять размер компонента, но он никак не влиет на размер растягивающий >>>рамки(той, на которой находятся квадратики в углах и в центре граней :)), ее размер я могу менять без проблем. >>>Кто-нибудь может подсказать, как добиться того, чтобы и размер этой рамки возвращался к размеру компонента >>>после окончания изменения размера? >>> >>>Василий. >> >>Попробуйте так: >> >>int CErrorDlgCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct) >>{ >> if (COleControl::OnCreate(lpCreateStruct) == -1) >> return -1; >> >> ..... >> >> SetControlSize(40, 40); // Размер, который Вы хотите >> return 0; >>} >> >>BOOL CErrorDlgCtrl::OnSetExtent(LPSIZEL lpSizeL) >>{ >> return FALSE; >>} >> >>Давно писал такой контрол, возможно что-то и упустил. >> >>