Позволяет ли Windows иметь окно с кнопкой помощи и кнопками min / max? - PullRequest
3 голосов
/ 23 мая 2011

Я хочу поместить кнопки справки на все мои окна, например:

enter image description here

Но когда я вставляю кнопку помощи, кнопки минимизации / максимизации исчезают.Разве Windows запрещает иметь кнопки min / max вместе с кнопками помощи?Это было бы неутешительно, потому что это означало бы, что я мог бы поместить кнопку справки только в диалогах, а не в фреймах.

Если Windows запрещает это, было бы неплохо увидеть официальный документ Microsoft, в котором говорится об этой политике.

Ответы [ 2 ]

2 голосов
/ 23 мая 2011

Это невозможно через настройки стилей Windows. Если бы вы действительно хотели, вы могли бы установить некоторые хуки, которые, вероятно, позволили бы вам делать то, что вы хотите, но я бы не рекомендовал делать это. Функцию кнопки справки можно имитировать, отправив сообщение WM_HELP.

Согласно MSDN , стили WS_MAXIMIZEBOX и WS_MINIMIZEBOX не могут быть объединены с WS_EX_CONTEXTHELP.

1 голос
/ 23 мая 2011

Хотя верно то, что говорит Даальберт, с некоторыми усилиями действительно можно нарисовать что-нибудь правильно на оконной раме. Конечно, это ни в коем случае не является «официальным», и ограничение, о котором упоминает Дальберт, остается в силе.

Вы можете прослушать WM_NCPAINT и нарисовать кнопку самостоятельно с помощью DrawFrameControl с DFC_BUTTON (что гарантирует, что она будет выглядеть как настоящая вещь). Используйте WM_NCHITTEST и друзей (WM_NC*BUTTON*), чтобы узнать, нажата ли кнопка, которую вы рисуете.

Так что да, технически возможно достичь того, чего вы хотите, но обычно не стоит дополнительных усилий.

Просто хотел, чтобы это было записано для полноты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...