Microsoft KB Archive/138505

= How to add a context-sensitive help button to the title bar of dialog boxes in Windows 95 =

Article ID: 138505

Article Last Modified on 11/21/2006

-

APPLIES TO

 Microsoft Foundation Class Library 4.2, when used with:  Microsoft Visual C++ 2.1

 Microsoft Visual C++ 2.2

 Microsoft Visual C++ 4.0 Standard Edition

 Microsoft Visual C++ 4.1 Subscription</li></ul>

 Microsoft Visual C++ 5.0 Enterprise Edition</li></ul>

 Microsoft Visual C++ 6.0 Enterprise Edition</li></ul>

 Microsoft Visual C++ 5.0 Professional Edition</li></ul>

 Microsoft Visual C++ 6.0 Professional Edition</li></ul>

 Microsoft Visual C++ 6.0 Standard Edition</li></ul> </li> Microsoft Visual C++ .NET 2002 Standard Edition</li> Microsoft Visual C++ .NET 2003 Standard Edition</li></ul>

-

<div class="notice_section">

This article was previously published under Q138505

<div class="notice_section">

Note Microsoft Visual C++ .NET (2002) supports both the managed code model that is provided by the Microsoft .NET Framework and the unmanaged native Microsoft Windows code model. The information in this article applies only to unmanaged Visual C++ code.

<div class="summary_section">

SUMMARY
Windows 95 provides DS_CONTEXTHELP as a dialog box style to implement context-sensitive help in dialog boxes. The Dialog Editor included with Visual C++ versions 2.1 and 2.2, does not provide a way to set this style when designing the dialog box. This article shows, by example, how to add the context-sensitive help button to the title bar of dialog boxes.

Starting with version 4.0 of Visual C++, the resource editor does allow this extended style to be set. However, this causes the resource editor to generate a DIALOGEX resource that is not supported on Win32s. Therefore, to stay compatible with Win32s, you can still apply the method discussed in this article.

In Visual C++ version 5.0 and 6.0, the resource editor allows you to set both options.

In Visual C++.NET, open the Resource View of the project and set the "Context Help" property of the dialog box to "True".

<div class="moreinformation_section">

MORE INFORMATION
If the DS_CONTEXTHELP style is set for a dialog box, Windows 95 adds a question mark button to the title bar of the dialog box. When the user clicks the question mark, the mouse pointer changes to a question mark with a pointer. If the user then clicks a control in the dialog box, the control receives a WM_HELP message.

To set this style, override the OnInitDialog member function of the CDialog-derived class, and add the WS_EX_CONTEXTHELP style to the extended styles for the dialog box. The following code illustrates this: BOOL CAboutDlg::OnInitDialog {       CDialog::OnInitDialog; LONG style = ::GetWindowLong(m_hWnd, GWL_EXSTYLE); style |= WS_EX_CONTEXTHELP; ::SetWindowLong(m_hWnd, GWL_EXSTYLE, style); return TRUE; } NOTE: DS_CONTEXTHELP is just a placeholder. When the dialog box is created, the system checks for DS_CONTEXTHELP and, if it is there, adds WS_EX_CONTEXTHELP to the extended style of the dialog box.

Additional query words: kbGrpPropSheet

Keywords: kbinfo kbcmndlg kbcode kbhowto kbuidesign KB138505

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.