Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Сворачивание/разворачивание окна

292
16 января 2007 года
Matush
726 / / 14.01.2004
Есть диалоговое окно без TitleBar'а. Его видно на тасбаре. Если я кликаю на него на тасбаре, то оно разворачиваеться, если кликаю еще раз, то оно не сворачивается.

Как его заставить сворачиваться?
16K
16 января 2007 года
Alfá
59 / / 12.01.2007
А как его видно? В смысле окно программы реализовано как диалоговое?
Можно добавить свою кнопку, посылающую соответствующую команду сворачивания
292
17 января 2007 года
Matush
726 / / 14.01.2004
[quote=Alfá;167235]А как его видно? В смысле окно программы реализовано как диалоговое?
Можно добавить свою кнопку, посылающую соответствующую команду сворачивания[/quote]

Да, окно диалоговое.
К примеру окно сейчас свернутое (или находится под другим). Кликаю на это окно на таскбаре - окно появляется на десктопе.
Теперь когда окно видно, я еще раз кликаю на него на тасбаре, чтоб оно свернулось - и оно НЕсворачивается.
3.2K
17 января 2007 года
Sania
186 / / 28.10.2006
Цитата: Matush
Если я кликаю на него на тасбаре, то оно разворачиваеться, если кликаю еще раз, то оно не сворачивается.
Как его заставить сворачиваться?



Если оно разворачивается, то было свернуто? Как?
SendMessage()
WM_Minimize

292
17 января 2007 года
Matush
726 / / 14.01.2004
Цитата: Sania
Если оно разворачивается, то было свернуто? Как?
SendMessage()
WM_Minimize



Я наверное плохо обьясняю.

Надо чтобы когда окно в развернутом состоянии, юзер кликает на него НА ТАСКБАРЕ, и оно дожлнл свернуться.

3.2K
17 января 2007 года
Sania
186 / / 28.10.2006
Если окно твое, то самое простое - сделать его недиалоговым.
Если окно чужое, то надо перехватывать клик по таскбару.
292
18 января 2007 года
Matush
726 / / 14.01.2004
Цитата: Sania
Если окно твое, то самое простое - сделать его недиалоговым.



Окно мое, код мой. Недиалоговое окно ничего не решает. Если у окна нету стиля [SIZE=2]WS_MINIMIZEBOX, то оно сворачиваться по клику на тасбаре не хочет.[/SIZE]

1.9K
18 января 2007 года
bad_duck
59 / / 29.07.2003
IMHO, только прехват клика по таскбару поможет. Видимо, винда не сворачивает окна без этого стиля.
1.8K
18 января 2007 года
k3Eahn
365 / / 19.12.2005
Цитата: Matush
Есть диалоговое окно без TitleBar'а. Его видно на тасбаре. Если я кликаю на него на тасбаре, то оно разворачиваеться, если кликаю еще раз, то оно не сворачивается.

Как его заставить сворачиваться?


Выставь диалогу стиль WS_DLGFRAME | WS_GROUP | WS_MINIMIZE | WS_POPUP | WS_VISIBLE (Не понятно почему, но ключевой здесь флаг это WS_GROUP).

292
18 января 2007 года
Matush
726 / / 14.01.2004
Цитата: k3Eahn
Выставь диалогу стиль WS_DLGFRAME | WS_GROUP | WS_MINIMIZE | WS_POPUP | WS_VISIBLE (Не понятно почему, но ключевой здесь флаг это WS_GROUP).



Ухты, пашет. Спасибо.

22K
17 марта 2007 года
black_priest
19 / / 12.03.2007
Вопрос к k3Eahn: в результате каких махинаций ты нашел что WS_GROUP будет себя так вести :)? Из нашего любимого MSDN этот флаг вообще другими вещами должен заниматься. Но у меня работает как ты и написал.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог