lStyle = GetWindowLong(MyForm->Handle, GWL_STYLE);
lStyle = lStyle | WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
SetWindowLong(MyForm->Handle, GWL_STYLE, lStyle);
lStyle = GetWindowLong(MyForm->Handle, GWL_EXSTYLE);
lStyle = lStyle | WS_EX_MDICHILD | WS_EX_WINDOWEDGE;
SetWindowLong(MyForm->Handle, GWL_EXSTYLE, lStyle);
SetParent(MyForm->Handle, ParentForm->Handle);
форму - дочернее окно другого приложения?
Как сделать свою форму дочерним окном другого приложения?
Цитата:
Originally posted by Татьяна
Как сделать свою форму дочерним окном другого приложения?
Как сделать свою форму дочерним окном другого приложения?
Что имеется ввиду под "другим приложением"? Ваша форма должна создаватся как MDIChild.
Цитата:
Originally posted by kot_
Что имеется ввиду под "другим приложением"? Ваша форма должна создаватся как MDIChild.
Что имеется ввиду под "другим приложением"? Ваша форма должна создаватся как MDIChild.
А почему обязательно как MDIChild? MDI-интерфейс часто бывает неудобен. Непонятно только что значит дочерней формой другого приложения?
Цитата:
Originally posted by Татьяна
Как сделать свою форму дочерним окном другого приложения?
Как сделать свою форму дочерним окном другого приложения?
Примерно так:
Код:
Спасибо, Plisteron. Но еще есть проблемы:1) эта дочерняя форма сворачивается как - то не так: Если родителем сделать калькулятор, попадает под кнопки, если Excel - вообще пропадает с экрана 2)При закрытии родительской формы дочерняя не закрывается 3) Хотелось бы сделать так, чтобы дочерняя форма не выходила за пределы родительской.
Цитата:
Originally posted by Татьяна
Спасибо, Plisteron. Но еще есть проблемы:1) эта дочерняя форма сворачивается как - то не так: Если родителем сделать калькулятор, попадает под кнопки, если Excel - вообще пропадает с экрана 2)При закрытии родительской формы дочерняя не закрывается 3) Хотелось бы сделать так, чтобы дочерняя форма не выходила за пределы родительской.
Спасибо, Plisteron. Но еще есть проблемы:1) эта дочерняя форма сворачивается как - то не так: Если родителем сделать калькулятор, попадает под кнопки, если Excel - вообще пропадает с экрана 2)При закрытии родительской формы дочерняя не закрывается 3) Хотелось бы сделать так, чтобы дочерняя форма не выходила за пределы родительской.
Давно это было... Году в 2001-м... Когда я такими вещами занимался.
1) Кинь на форму панель и родительским окном делай эту панель.
2) Дочернюю форму по-любому закрывать придётся тебе, т.к. это не MDI, родительское окно ничего не знает о дочерних.
3) Странно... у меня было всё в порядке...
Впрочем, я привёл не кусок рабочего кода, а так, что вспомнилось. Над этим ещё работать и работать.