diff --git a/docs/c-runtime-library/data-type-constants.md b/docs/c-runtime-library/data-type-constants.md
index 3811e66bb2a..e69c292b9bb 100644
--- a/docs/c-runtime-library/data-type-constants.md
+++ b/docs/c-runtime-library/data-type-constants.md
@@ -4,7 +4,6 @@ title: "Data Type Constants"
ms.date: "06/25/2018"
f1_keywords: ["FLT_MIN", "SHRT_MAX", "CHAR_MIN", "MB_LEN_MAX", "DBL_EPSILON", "SHRT_MIN", "_FLT_RADIX", "FLT_DIG", "FLT_MAX_10_EXP", "FLT_MANT_DIG", "DBL_MAX_EXP", "SCHAR_MIN", "SCHAR_MAX", "DBL_MIN", "FLT_MIN_10_EXP", "_DBL_ROUNDS", "USHRT_MAX", "FLT_MAX_EXP", "LONG_MAX", "DBL_MAX", "DBL_DIG", "FLT_MIN_EXP", "INT_MIN", "DBL_MIN_10_EXP", "CHAR_BIT", "INT_MAX", "ULONG_MAX", "DBL_MIN_EXP", "LONG_MIN", "_FLT_ROUNDS", "DBL_MANT_DIG", "_DBL_RADIX", "CHAR_MAX", "FLT_MAX", "DBL_MAX_10_EXP", "UCHAR_MAX", "FLT_EPSILON", "UINT_MAX", "LLONG_MIN", "LLONG_MAX", "ULLONG_MAX", "_I8_MIN", "_I8_MAX", "_UI8_MAX", "_I16_MIN", "_I16_MAX", "_UI16_MAX", "_I32_MIN", "_I32_MAX", "_UI32_MAX", "_I64_MIN", "_I64_MAX", "_UI64_MAX", "_I128_MIN", "_I128_MAX", "_UI128_MAX", "SIZE_MAX", "RSIZE_MAX", "LDBL_DIG", "LDBL_EPSILON", "LDBL_HAS_SUBNORM", "LDBL_MANT_DIG", "LDBL_MAX", "LDBL_MAX_10_EXP", "LDBL_MAX_EXP", "LDBL_MIN", "LDBL_MIN_10_EXP", "LDBL_MIN_EXP", "_LDBL_RADIX", "LDBL_TRUE_MIN", "DECIMAL_DIG"]
helpviewer_keywords: ["DBL_MAX_EXP constant", "_DBL_RADIX constant", "FLT_MIN_EXP constant", "DBL_EPSILON constant", "INT_MIN constant", "FLT_EPSILON constant", "DBL_MANT_DIG constant", "_FLT_RADIX constant", "DBL_MIN constant", "USHRT_MAX constant", "FLT_MAX_10_EXP constant", "_FLT_ROUNDS constant", "data type constants [C++]", "_DBL_ROUNDS constant", "CHAR_MAX constant", "FLT_MAX_EXP constant", "FLT_MIN constant", "CHAR_MIN constant", "FLT_MIN_10_EXP constant", "DBL_MIN_EXP constant", "SCHAR_MAX constant", "FLT_RADIX constant", "CHAR_BIT constant", "UCHAR_MAX constant", "DBL_RADIX constant", "FLT_ROUNDS constant", "LONG_MIN constant", "SHRT_MAX constant", "LONG_MAX constant", "DBL_MAX_10_EXP constant", "DBL_MIN_10_EXP constant", "INT_MAX constant", "constants [C++], data type", "ULONG_MAX constant", "FLT_DIG constant", "MB_LEN_MAX constant", "DBL_DIG constant", "SHRT_MIN constant", "DBL_MAX constant", "DBL_ROUNDS constant", "FLT_MAX constant", "UINT_MAX constant", "FLT_MANT_DIG constant", "SCHAR_MIN constant", "LLONG_MIN constant", "LLONG_MAX constant", "ULLONG_MAX constant", "_I8_MIN constant", "_I8_MAX constant", "_UI8_MAX constant", "_I16_MIN constant", "_I16_MAX constant", "_UI16_MAX constant", "_I32_MIN constant", "_I32_MAX constant", "_UI32_MAX constant", "_I64_MIN constant", "_I64_MAX constant", "_UI64_MAX constant", "_I128_MIN constant", "_I128_MAX constant", "_UI128_MAX constant", "SIZE_MAX constant", "RSIZE_MAX constant"]
-ms.assetid: c0f1c405-0465-41d5-b5ff-e81cdb6f1622
---
# Data Type Constants
@@ -23,42 +22,42 @@ These constants give the ranges for the integral data types. To use these consta
|Constant|Value|Description|
|--------------|-----------|-------------|
-|**CHAR_BIT**|8|Number of bits in a **`char`**|
-|**SCHAR_MIN**|(-128)|Minimum **`signed char`** value|
-|**SCHAR_MAX**|127|Maximum **`signed char`** value|
-|**UCHAR_MAX**|255 (0xff)|Maximum **`unsigned char`** value|
-|**CHAR_MIN**|(-128) (0 if **`/J`** option used)|Minimum **`char`** value|
-|**CHAR_MAX**|127 (255 if **`/J`** option used)|Maximum **`char`** value|
-|**MB_LEN_MAX**|5|Maximum number of bytes in multibyte **`char`**|
-|**SHRT_MIN**|-32768|Minimum **`signed short`** value|
-|**SHRT_MAX**|32767|Maximum **`signed short`** value|
-|**USHRT_MAX**|65535 (0xffff)|Maximum **`unsigned short`** value|
-|**INT_MIN**|(-2147483647 - 1)|Minimum **`signed int`** value|
-|**INT_MAX**|2147483647|Maximum **`signed int`** value|
-|**UINT_MAX**|4294967295 (0xffffffff)|Maximum **`unsigned int`** value|
-|**LONG_MIN**|(-2147483647L - 1)|Minimum **`signed long`** value|
-|**LONG_MAX**|2147483647L|Maximum **`signed long`** value|
-|**ULONG_MAX**|4294967295UL (0xfffffffful)|Maximum **`unsigned long`** value|
-|**LLONG_MIN**|(-9223372036854775807LL - 1)|Minimum **`signed long long`** or **`__int64`** value|
-|**LLONG_MAX**|9223372036854775807LL|Maximum **`signed long long`** or **`__int64`** value|
-|**ULLONG_MAX**|0xffffffffffffffffull|Maximum **`unsigned long long`** value|
-|**_I8_MIN**|(-127i8 - 1)|Minimum signed 8-bit value|
-|**_I8_MAX**|127i8|Maximum signed 8-bit value|
-|**_UI8_MAX**|0xffui8|Maximum unsigned 8-bit value|
-|**_I16_MIN**|(-32767i16 - 1)|Minimum signed 16-bit value|
-|**_I16_MAX**|32767i16|Maximum signed 16-bit value|
-|**_UI16_MAX**|0xffffui16|Maximum unsigned 16-bit value|
-|**_I32_MIN**|(-2147483647i32 - 1)|Minimum signed 32-bit value|
-|**_I32_MAX**|2147483647i32|Maximum signed 32-bit value|
-|**_UI32_MAX**|0xffffffffui32|Maximum unsigned 32-bit value|
-|**_I64_MIN**|(-9223372036854775807 - 1)|Minimum signed 64-bit value|
-|**_I64_MAX**|9223372036854775807|Maximum signed 64-bit value|
-|**_UI64_MAX**|0xffffffffffffffffui64|Maximum unsigned 64-bit value|
-|**_I128_MIN**|(-170141183460469231731687303715884105727i128 - 1)|Minimum signed 128-bit value|
-|**_I128_MAX**|170141183460469231731687303715884105727i128|Maximum signed 128-bit value|
-|**_UI128_MAX**|0xffffffffffffffffffffffffffffffffui128|Maximum unsigned 128-bit value|
-|**SIZE_MAX**|same as **_UI64_MAX** if **_WIN64** is defined, or **UINT_MAX**|Maximum native integer size|
-|**RSIZE_MAX**|same as (**SIZE_MAX** >> 1)|Maximum secure library integer size|
+|**`CHAR_BIT`**|8|Number of bits in a **`char`**|
+|**`SCHAR_MIN`**|(-128)|Minimum **`signed char`** value|
+|**`SCHAR_MAX`**|127|Maximum **`signed char`** value|
+|**`UCHAR_MAX`**|255 (0xff)|Maximum **`unsigned char`** value|
+|**`CHAR_MIN`**|(-128) (0 if **`/J`** option used)|Minimum **`char`** value|
+|**`CHAR_MAX`**|127 (255 if **`/J`** option used)|Maximum **`char`** value|
+|**`MB_LEN_MAX`**|5|Maximum number of bytes in multibyte **`char`**|
+|**`SHRT_MIN`**|-32768|Minimum **`signed short`** value|
+|**`SHRT_MAX`**|32767|Maximum **`signed short`** value|
+|**`USHRT_MAX`**|65535 (0xffff)|Maximum **`unsigned short`** value|
+|**`INT_MIN`**|(-2147483647 - 1)|Minimum **`signed int`** value|
+|**`INT_MAX`**|2147483647|Maximum **`signed int`** value|
+|**`UINT_MAX`**|4294967295 (0xffffffff)|Maximum **`unsigned int`** value|
+|**`LONG_MIN`**|(-2147483647L - 1)|Minimum **`signed long`** value|
+|**`LONG_MAX`**|2147483647L|Maximum **`signed long`** value|
+|**`ULONG_MAX`**|4294967295UL (0xfffffffful)|Maximum **`unsigned long`** value|
+|**`LLONG_MIN`**|(-9223372036854775807LL - 1)|Minimum **`signed long long`** or **`__int64`** value|
+|**`LLONG_MAX`**|9223372036854775807LL|Maximum **`signed long long`** or **`__int64`** value|
+|**`ULLONG_MAX`**|0xffffffffffffffffull|Maximum **`unsigned long long`** value|
+|**`_I8_MIN`**|(-127i8 - 1)|Minimum signed 8-bit value|
+|**`_I8_MAX`**|127i8|Maximum signed 8-bit value|
+|**`_UI8_MAX`**|0xffui8|Maximum unsigned 8-bit value|
+|**`_I16_MIN`**|(-32767i16 - 1)|Minimum signed 16-bit value|
+|**`_I16_MAX`**|32767i16|Maximum signed 16-bit value|
+|**`_UI16_MAX`**|0xffffui16|Maximum unsigned 16-bit value|
+|**`_I32_MIN`**|(-2147483647i32 - 1)|Minimum signed 32-bit value|
+|**`_I32_MAX`**|2147483647i32|Maximum signed 32-bit value|
+|**`_UI32_MAX`**|0xffffffffui32|Maximum unsigned 32-bit value|
+|**`_I64_MIN`**|(-9223372036854775807 - 1)|Minimum signed 64-bit value|
+|**`_I64_MAX`**|9223372036854775807|Maximum signed 64-bit value|
+|**`_UI64_MAX`**|0xffffffffffffffffui64|Maximum unsigned 64-bit value|
+|**`_I128_MIN`**|(-170141183460469231731687303715884105727i128 - 1)|Minimum signed 128-bit value|
+|**`_I128_MAX`**|170141183460469231731687303715884105727i128|Maximum signed 128-bit value|
+|**`_UI128_MAX`**|0xffffffffffffffffffffffffffffffffui128|Maximum unsigned 128-bit value|
+|**`SIZE_MAX`**|same as **`_UI64_MAX`** if **`_WIN64`** is defined, or **`UINT_MAX`**|Maximum native integer size|
+|**`RSIZE_MAX`**|same as (**`SIZE_MAX`** >> 1)|Maximum secure library integer size|
## Floating-point type constants
@@ -70,45 +69,45 @@ The following constants give the range and other characteristics of the **`long
|Constant|Value|Description|
|--------------|-----------|-----------------|
-|**DBL_DECIMAL_DIG**|17|# of decimal digits of rounding precision|
-|**DBL_DIG**|15|# of decimal digits of precision|
-|**DBL_EPSILON**|2.2204460492503131e-016|Smallest such that 1.0 + **DBL_EPSILON** != 1.0|
-|**DBL_HAS_SUBNORM**|1|Type supports subnormal (denormal) numbers|
-|**DBL_MANT_DIG**|53|# of bits in significand (mantissa)|
-|**DBL_MAX**|1.7976931348623158e+308|Maximum value|
-|**DBL_MAX_10_EXP**|308|Maximum decimal exponent|
-|**DBL_MAX_EXP**|1024|Maximum binary exponent|
-|**DBL_MIN**|2.2250738585072014e-308|Minimum normalized positive value|
-|**DBL_MIN_10_EXP**|(-307)|Minimum decimal exponent|
-|**DBL_MIN_EXP**|(-1021)|Minimum binary exponent|
-|**_DBL_RADIX**|2|Exponent radix|
-|**DBL_TRUE_MIN**|4.9406564584124654e-324|Minimum positive subnormal value|
-|**FLT_DECIMAL_DIG**|9|Number of decimal digits of rounding precision|
-|**FLT_DIG**|6|Number of decimal digits of precision|
-|**FLT_EPSILON**|1.192092896e-07F|Smallest such that 1.0 + **FLT_EPSILON** != 1.0|
-|**FLT_HAS_SUBNORM**|1|Type supports subnormal (denormal) numbers|
-|**FLT_MANT_DIG**|24|Number of bits in significand (mantissa)|
-|**FLT_MAX**|3.402823466e+38F|Maximum value|
-|**FLT_MAX_10_EXP**|38|Maximum decimal exponent|
-|**FLT_MAX_EXP**|128|Maximum binary exponent|
-|**FLT_MIN**|1.175494351e-38F|Minimum normalized positive value|
-|**FLT_MIN_10_EXP**|(-37)|Minimum decimal exponent|
-|**FLT_MIN_EXP**|(-125)|Minimum binary exponent|
-|**FLT_RADIX**|2|Exponent radix|
-|**FLT_TRUE_MIN**|1.401298464e-45F|Minimum positive subnormal value|
-|**LDBL_DIG**|15|# of decimal digits of precision|
-|**LDBL_EPSILON**|2.2204460492503131e-016|Smallest such that 1.0 + **LDBL_EPSILON** != 1.0|
-|**LDBL_HAS_SUBNORM**|1|Type supports subnormal (denormal) numbers|
-|**LDBL_MANT_DIG**|53|# of bits in significand (mantissa)|
-|**LDBL_MAX**|1.7976931348623158e+308|Maximum value|
-|**LDBL_MAX_10_EXP**|308|Maximum decimal exponent|
-|**LDBL_MAX_EXP**|1024|Maximum binary exponent|
-|**LDBL_MIN**|2.2250738585072014e-308|Minimum normalized positive value|
-|**LDBL_MIN_10_EXP**|(-307)|Minimum decimal exponent|
-|**LDBL_MIN_EXP**|(-1021)|Minimum binary exponent|
-|**_LDBL_RADIX**|2|Exponent radix|
-|**LDBL_TRUE_MIN**|4.9406564584124654e-324|Minimum positive subnormal value|
-|**DECIMAL_DIG**|same as **DBL_DECIMAL_DIG**|Default (double) decimal digits of rounding precision|
+|**`DBL_DECIMAL_DIG`**|17|# of decimal digits of rounding precision|
+|**`DBL_DIG`**|15|# of decimal digits of precision|
+|**`DBL_EPSILON`**|2.2204460492503131e-016|Smallest such that 1.0 + **`DBL_EPSILON`** != 1.0|
+|**`DBL_HAS_SUBNORM`**|1|Type supports subnormal (denormal) numbers|
+|**`DBL_MANT_DIG`**|53|# of bits in significand (mantissa)|
+|**`DBL_MAX`**|1.7976931348623158e+308|Maximum value|
+|**`DBL_MAX_10_EXP`**|308|Maximum decimal exponent|
+|**`DBL_MAX_EXP`**|1024|Maximum binary exponent|
+|**`DBL_MIN`**|2.2250738585072014e-308|Minimum normalized positive value|
+|**`DBL_MIN_10_EXP`**|(-307)|Minimum decimal exponent|
+|**`DBL_MIN_EXP`**|(-1021)|Minimum binary exponent|
+|**`_DBL_RADIX`**|2|Exponent radix|
+|**`DBL_TRUE_MIN`**|4.9406564584124654e-324|Minimum positive subnormal value|
+|**`FLT_DECIMAL_DIG`**|9|Number of decimal digits of rounding precision|
+|**`FLT_DIG`**|6|Number of decimal digits of precision|
+|**`FLT_EPSILON`**|1.192092896e-07F|Smallest such that 1.0 + **`FLT_EPSILON`** != 1.0|
+|**`FLT_HAS_SUBNORM`**|1|Type supports subnormal (denormal) numbers|
+|**`FLT_MANT_DIG`**|24|Number of bits in significand (mantissa)|
+|**`FLT_MAX`**|3.402823466e+38F|Maximum value|
+|**`FLT_MAX_10_EXP`**|38|Maximum decimal exponent|
+|**`FLT_MAX_EXP`**|128|Maximum binary exponent|
+|**`FLT_MIN`**|1.175494351e-38F|Minimum normalized positive value|
+|**`FLT_MIN_10_EXP`**|(-37)|Minimum decimal exponent|
+|**`FLT_MIN_EXP`**|(-125)|Minimum binary exponent|
+|**`FLT_RADIX`**|2|Exponent radix|
+|**`FLT_TRUE_MIN`**|1.401298464e-45F|Minimum positive subnormal value|
+|**`LDBL_DIG`**|15|# of decimal digits of precision|
+|**`LDBL_EPSILON`**|2.2204460492503131e-016|Smallest such that 1.0 + **`LDBL_EPSILON`** != 1.0|
+|**`LDBL_HAS_SUBNORM`**|1|Type supports subnormal (denormal) numbers|
+|**`LDBL_MANT_DIG`**|53|# of bits in significand (mantissa)|
+|**`LDBL_MAX`**|1.7976931348623158e+308|Maximum value|
+|**`LDBL_MAX_10_EXP`**|308|Maximum decimal exponent|
+|**`LDBL_MAX_EXP`**|1024|Maximum binary exponent|
+|**`LDBL_MIN`**|2.2250738585072014e-308|Minimum normalized positive value|
+|**`LDBL_MIN_10_EXP`**|(-307)|Minimum decimal exponent|
+|**`LDBL_MIN_EXP`**|(-1021)|Minimum binary exponent|
+|**`_LDBL_RADIX`**|2|Exponent radix|
+|**`LDBL_TRUE_MIN`**|4.9406564584124654e-324|Minimum positive subnormal value|
+|**`DECIMAL_DIG`**|same as **`DBL_DECIMAL_DIG`**|Default (double) decimal digits of rounding precision|
## See also
diff --git a/docs/c-runtime-library/reference/assert-asserte-assert-expr-macros.md b/docs/c-runtime-library/reference/assert-asserte-assert-expr-macros.md
index c7a2b5784d8..039ed8901f4 100644
--- a/docs/c-runtime-library/reference/assert-asserte-assert-expr-macros.md
+++ b/docs/c-runtime-library/reference/assert-asserte-assert-expr-macros.md
@@ -7,11 +7,10 @@ api_type: ["DLLExport"]
topic_type: ["apiref"]
f1_keywords: ["_ASSERTE", "ASSERTE", "_ASSERT_EXPR"]
helpviewer_keywords: ["debugging [CRT], using macros", "_ASSERTE macro", "macros, debugging with", "debug reporting macros", "_ASSERT macro", "_ASSERT_EXPR macro"]
-ms.assetid: e98fd2a6-7f5e-4aa8-8fe8-e93490deba36
---
-# _ASSERT, _ASSERTE, _ASSERT_EXPR Macros
+# `_ASSERT`, `_ASSERTE`, `_ASSERT_EXPR` Macros
-Evaluate an expression and generate a debug report when the result is **False** (debug version only).
+Evaluate an expression and generate a debug report when the result is **`False`** (debug version only).
## Syntax
@@ -24,47 +23,47 @@ _ASSERTE( booleanExpression );
### Parameters
-*booleanExpression*
-A scalar expression (including pointer expressions) that evaluates to nonzero (true) or 0 (false).
+*`booleanExpression`*\
+A scalar expression (including pointer expressions) that evaluates to nonzero (`true`) or 0 (`false`).
-*message*
+*`message`*\
A wide string to display as part of the report.
## Remarks
-The **_ASSERT_EXPR**, **_ASSERT** and **_ASSERTE** macros provide an application with a clean and simple mechanism for checking assumptions during the debugging process. They are very flexible because they do not need to be enclosed in `#ifdef` statements to prevent them from being called in a retail build of an application. This flexibility is achieved by using the [_DEBUG](../../c-runtime-library/debug.md) macro. **_ASSERT_EXPR**, **_ASSERT** and **_ASSERTE** are only available when **_DEBUG** is defined at compile time. When **_DEBUG** is not defined, calls to these macros are removed during preprocessing.
+The **`_ASSERT_EXPR`**, **`_ASSERT`** and **`_ASSERTE`** macros provide an application with a clean and simple mechanism for checking assumptions during the debugging process. They're very flexible because they don't need to be enclosed in `#ifdef` statements to prevent them from being called in a retail build of an application. This flexibility is achieved by using the [`_DEBUG`](../../c-runtime-library/debug.md) macro. **`_ASSERT_EXPR`**, **`_ASSERT`** and **`_ASSERTE`** are only available when **`_DEBUG`** is defined at compile time. When **`_DEBUG`** isn't defined, calls to these macros are removed during preprocessing.
-**_ASSERT_EXPR**, **_ASSERT** and **_ASSERTE** evaluate their *booleanExpression* argument and when the result is **`false`** (0), they print a diagnostic message and call [_CrtDbgReportW](crtdbgreport-crtdbgreportw.md) to generate a debug report. The **_ASSERT** macro prints a simple diagnostic message, **_ASSERTE** includes a string representation of the failed expression in the message, and **_ASSERT_EXPR** includes the *message* string in the diagnostic message. These macros do nothing when *booleanExpression* evaluates to nonzero.
+**`_ASSERT_EXPR`**, **`_ASSERT`** and **`_ASSERTE`** evaluate their *`booleanExpression`* argument and when the result is **`false`** (0), they print a diagnostic message and call [`_CrtDbgReportW`](crtdbgreport-crtdbgreportw.md) to generate a debug report. The **`_ASSERT`** macro prints a simple diagnostic message, **`_ASSERTE`** includes a string representation of the failed expression in the message, and **`_ASSERT_EXPR`** includes the *`message`* string in the diagnostic message. These macros do nothing when *`booleanExpression`* evaluates to nonzero.
-**_ASSERT_EXPR**, **_ASSERT** and **_ASSERTE** invoke **_CrtDbgReportW**, which causes all output to be in wide characters. **_ASSERTE** properly prints Unicode characters in *booleanExpression* and **_ASSERT_EXPR** prints Unicode characters in *message*.
+**`_ASSERT_EXPR`**, **`_ASSERT`** and **`_ASSERTE`** invoke **`_CrtDbgReportW`**, which causes all output to be in wide characters. **`_ASSERTE`** properly prints Unicode characters in *`booleanExpression`* and **`_ASSERT_EXPR`** prints Unicode characters in *`message`*.
-Because the **_ASSERTE** macro specifies the failed expression, and **_ASSERT_EXPR** lets you specify a message in the generated report, they enable users to identify the problem without referring to the application source code. However, a disadvantage exists in that every *message* printed by **_ASSERT_EXPR** and every expression evaluated by **_ASSERTE** is included in the output (debug version) file of your application as a string constant. Therefore, if a large number of calls are made to **_ASSERT_EXPR** or **_ASSERTE**, these expressions can greatly increase the size of your output file.
+Because the **`_ASSERTE`** macro specifies the failed expression, and **`_ASSERT_EXPR`** lets you specify a message in the generated report, they enable users to identify the problem without referring to the application source code. However, a disadvantage exists in that every *`message`* printed by **`_ASSERT_EXPR`** and every expression evaluated by **`_ASSERTE`** is included in the output (debug version) file of your application as a string constant. Therefore, if a large number of calls are made to **`_ASSERT_EXPR`** or **`_ASSERTE`**, these expressions can greatly increase the size of your output file.
-Unless you specify otherwise with the [_CrtSetReportMode](crtsetreportmode.md) and [_CrtSetReportFile](crtsetreportfile.md) functions, messages appear in a pop-up dialog box equivalent to setting:
+Unless you specify otherwise with the [`_CrtSetReportMode`](crtsetreportmode.md) and [`_CrtSetReportFile`](crtsetreportfile.md) functions, messages appear in a pop-up dialog box equivalent to setting:
```C
_CrtSetReportMode(CRT_ASSERT, _CRTDBG_MODE_WNDW);
````
-**_CrtDbgReportW** generates the debug report and determines its destination or destinations, based on the current report mode or modes and file defined for the **_CRT_ASSERT** report type. By default, assertion failures and errors are directed to a debug message window. The [_CrtSetReportMode](crtsetreportmode.md) and [_CrtSetReportFile](crtsetreportfile.md) functions are used to define the destinations for each report type.
+**`_CrtDbgReportW`** generates the debug report and determines its destination or destinations, based on the current report mode or modes and file defined for the **`_CRT_ASSERT`** report type. By default, assertion failures and errors are directed to a debug message window. The [`_CrtSetReportMode`](crtsetreportmode.md) and [`_CrtSetReportFile`](crtsetreportfile.md) functions are used to define the destinations for each report type.
-When the destination is a debug message window and the user clicks the **Retry** button, **_CrtDbgReportW** returns 1, causing the **_ASSERT_EXPR**, **_ASSERT** and **_ASSERTE** macros to start the debugger provided that just-in-time (JIT) debugging is enabled.
+When the destination is a debug message window and the user selects the **Retry** button, **`_CrtDbgReportW`** returns 1, causing the **`_ASSERT_EXPR`**, **`_ASSERT`** and **`_ASSERTE`** macros to start the debugger provided that just-in-time (JIT) debugging is enabled.
-For more information about the reporting process, see the [_CrtDbgReport, _CrtDbgReportW](crtdbgreport-crtdbgreportw.md) function. For more information about resolving assertion failures and using these macros as a debugging error handling mechanism, see [Using Macros for Verification and Reporting](/visualstudio/debugger/macros-for-reporting).
+For more information about the reporting process, see the [`_CrtDbgReport`, `_CrtDbgReportW`](crtdbgreport-crtdbgreportw.md) function. For more information about resolving assertion failures and using these macros as a debugging error handling mechanism, see [Using Macros for Verification and Reporting](/visualstudio/debugger/macros-for-reporting).
-In addition to the **_ASSERT** macros, the [assert](assert-macro-assert-wassert.md) macro can be used to verify program logic. This macro is available in both the debug and release versions of the libraries. The [_RPT, _RPTF](rpt-rptf-rptw-rptfw-macros.md) debug macros are also available for generating a debug report, but they do not evaluate an expression. The **_RPT** macros generate a simple report. The **_RPTF** macros include the source file and line number where the report macro was called in the generated report. Wide character versions of these macros are available (**_RPTW**, **_RPTFW**). The wide character versions are identical to the narrow character versions except that wide character strings are used for all string parameters and output.
+In addition to the **`_ASSERT`** macros, the [`assert`](assert-macro-assert-wassert.md) macro can be used to verify program logic. This macro is available in both the debug and release versions of the libraries. The [`_RPT`, `_RPTF`](rpt-rptf-rptw-rptfw-macros.md) debug macros are also available for generating a debug report, but they don't evaluate an expression. The **`_RPT`** macros generate a simple report. The **`_RPTF`** macros include the source file and line number where the report macro was called in the generated report. Wide character versions of these macros are available (**`_RPTW`**, **`_RPTFW`**). The wide character versions are identical to the narrow character versions except that wide character strings are used for all string parameters and output.
-Although **_ASSERT_EXPR**, **_ASSERT** and **_ASSERTE** are macros and are available by including \, the application must link with a debug version of the C run-time library when **_DEBUG** is defined because these macros call other run-time functions.
+Although **`_ASSERT_EXPR`**, **`_ASSERT`** and **`_ASSERTE`** are macros and are available by including ``, the application must link with a debug version of the C run-time library when **`_DEBUG`** is defined because these macros call other run-time functions.
## Requirements
|Macro|Required header|
|-----------|---------------------|
-|**_ASSERT_EXPR**, **_ASSERT**, **_ASSERTE**|\|
+|**`_ASSERT_EXPR`**, **`_ASSERT`**, **`_ASSERTE`**|``|
## Example
-In this program, calls are made to the **_ASSERT** and **_ASSERTE** macros to test the condition `string1 == string2`. If the condition fails, these macros print a diagnostic message. The **_RPT** and **_RPTF** group of macros is also exercised in this program, as an alternative to the **printf** function.
+In this program, calls are made to the **`_ASSERT`** and **`_ASSERTE`** macros to test the condition `string1 == string2`. If the condition fails, these macros print a diagnostic message. The **`_RPT`** and **`_RPTF`** group of macros is also exercised in this program, as an alternative to the **`printf`** function.
```C
// crt_ASSERT_macro.c
@@ -140,6 +139,6 @@ crt_ASSERT_macro.c(59) : Assertion failed: p1 == p2
## See also
-[Debug Routines](../../c-runtime-library/debug-routines.md)
-[assert Macro, _assert, _wassert](assert-macro-assert-wassert.md)
-[_RPT, _RPTF, _RPTW, _RPTFW Macros](rpt-rptf-rptw-rptfw-macros.md)
+[Debug Routines](../../c-runtime-library/debug-routines.md)\
+[`assert` Macro, `_assert`, `_wassert`](assert-macro-assert-wassert.md)\
+[`_RPT`, `_RPTF`, `_RPTW`, `_RPTFW` Macros](rpt-rptf-rptw-rptfw-macros.md)
diff --git a/docs/c-runtime-library/reference/invalid-parameter-functions.md b/docs/c-runtime-library/reference/invalid-parameter-functions.md
index 0bbc02863b3..6773ece39db 100644
--- a/docs/c-runtime-library/reference/invalid-parameter-functions.md
+++ b/docs/c-runtime-library/reference/invalid-parameter-functions.md
@@ -7,9 +7,8 @@ api_location: ["api-ms-win-crt-runtime-l1-1-0.dll", "api-ms-win-crt-private-l1-1
api_type: ["DLLExport"]
topic_type: ["apiref"]
f1_keywords: ["CORECRT/_invalid_parameter", "_invalid_parameter", "CORECRT/_invalid_parameter_noinfo", "_invalid_parameter_noinfo", "CORECRT/_invalid_parameter_noinfo_noreturn", "_invalid_parameter_noinfo_noreturn", "CORECRT/_invoke_watson", "_invoke_watson"]
-ms.assetid: a4d6f1fd-ce56-4783-8719-927151a7a814
---
-# _invalid_parameter, _invalid_parameter_noinfo, _invalid_parameter_noinfo_noreturn, _invoke_watson
+# `_invalid_parameter`, `_invalid_parameter_noinfo`, `_invalid_parameter_noinfo_noreturn`, `_invoke_watson`
These functions are used by the C Runtime Library to handle non-valid parameters passed to CRT Library functions. Your code may also use these functions to support default or customizable handling of non-valid parameters.
@@ -41,34 +40,34 @@ _invoke_watson(
## Parameters
-*expression*
-A string representing the source code parameter expression that is not valid.
+*`expression`*\
+A string representing the source code parameter expression that isn't valid.
-*function_name*
+*`function_name`*\
The name of the function that called the handler.
-*file_name*
+*`file_name`*\
The source code file where the handler was called.
-*line_number*
+*`line_number`*\
The line number in the source code where the handler was called.
-*reserved*
+*`reserved`*\
Unused.
## Return Value
-These functions do not return a value. The **_invalid_parameter_noinfo_noreturn** and **_invoke_watson** functions do not return to the caller, and in some cases, **_invalid_parameter** and **_invalid_parameter_noinfo** may not return to the caller.
+These functions don't return a value. The **`_invalid_parameter_noinfo_noreturn`** and **`_invoke_watson`** functions don't return to the caller, and in some cases, **`_invalid_parameter`** and **`_invalid_parameter_noinfo`** may not return to the caller.
## Remarks
-When C runtime library functions are passed non-valid parameters, the library functions call an *invalid parameter handler*, a function that may be specified by the programmer to do any of several things. For example, it may report the issue to the user, write to a log, break in a debugger, terminate the program, or do nothing at all. If no function is specified by the programmer, a default handler, **_invoke_watson**, is called.
+When C runtime library functions are passed non-valid parameters, the library functions call an *invalid parameter handler*, a function that may be specified by the programmer to do any of several things. For example, it may report the issue to the user, write to a log, break in a debugger, terminate the program, or do nothing at all. If no function is specified by the programmer, a default handler, **`_invoke_watson`**, is called.
-By default, when a non-valid parameter is identified in debug code, CRT library functions call the function **_invalid_parameter** using verbose parameters. In non-debug code, the **_invalid_parameter_noinfo** function is called, which calls the **_invalid_parameter** function using empty parameters. If the non-debug CRT library function requires program termination, the **_invalid_parameter_noinfo_noreturn** function is called, which calls the **_invalid_parameter** function using empty parameters, followed by a call to the **_invoke_watson** function to force program termination.
+By default, when a non-valid parameter is identified in debug code, CRT library functions call the function **`_invalid_parameter`** using verbose parameters. In non-debug code, the **`_invalid_parameter_noinfo`** function is called, which calls the **`_invalid_parameter`** function using empty parameters. If the non-debug CRT library function requires program termination, the **`_invalid_parameter_noinfo_noreturn`** function is called, which calls the **`_invalid_parameter`** function using empty parameters, followed by a call to the **`_invoke_watson`** function to force program termination.
-The **_invalid_parameter** function checks whether a user-defined invalid parameter handler was set, and if so, calls it. For example, if a user-defined thread-local handler was set by a call to [set_thread_local_invalid_parameter_handler](set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler.md) in the current thread, it is called, then the function returns. Otherwise, if a user-defined global invalid parameter handler was set by a call to [set_invalid_parameter_handler](set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler.md), it is called, then the function returns. Otherwise, the default handler **_invoke_watson** is called. The default behavior of **_invoke_watson** is to terminate the program. User-defined handlers may terminate or return. We recommend that user-defined handlers terminate the program unless recovery is certain.
+The **`_invalid_parameter`** function checks whether a user-defined invalid parameter handler was set, and if so, calls it. For example, if a user-defined thread-local handler was set by a call to [`set_thread_local_invalid_parameter_handler`](set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler.md) in the current thread, it's called, then the function returns. Otherwise, if a user-defined global invalid parameter handler was set by a call to [`set_invalid_parameter_handler`](set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler.md), it's called, then the function returns. Otherwise, the default handler **`_invoke_watson`** is called. The default behavior of **`_invoke_watson`** is to terminate the program. User-defined handlers may terminate or return. We recommend that user-defined handlers terminate the program unless recovery is certain.
-When the default handler **_invoke_watson** is called, if the processor supports a [__fastfail](../../intrinsics/fastfail.md) operation, it is invoked using a parameter of **FAST_FAIL_INVALID_ARG** and the process terminates. Otherwise, a fast fail exception is raised, which can be caught by an attached debugger. If the process is allowed to continue, it is terminated by a call to the Windows **TerminateProcess** function using an exception code status of **STATUS_INVALID_CRUNTIME_PARAMETER**.
+When the default handler **`_invoke_watson`** is called, if the processor supports a [`__fastfail`](../../intrinsics/fastfail.md) operation, it's invoked using a parameter of **`FAST_FAIL_INVALID_ARG`** and the process terminates. Otherwise, a fast fail exception is raised, which can be caught by an attached debugger. If the process is allowed to continue, it's terminated by a call to the Windows **`TerminateProcess`** function using an exception code status of **`STATUS_INVALID_CRUNTIME_PARAMETER`**.
By default, this function's global state is scoped to the application. To change this, see [Global state in the CRT](../global-state.md).
@@ -76,13 +75,13 @@ By default, this function's global state is scoped to the application. To change
|Function|Required header|
|--------------|------------------|
-|**_invalid_parameter**, **_invalid_parameter_noinfo**, **_invalid_parameter_noinfo_noreturn**, **_invoke_watson**|\|
+|**`_invalid_parameter`**, **`_invalid_parameter_noinfo`**, **`_invalid_parameter_noinfo_noreturn`**, **`_invoke_watson`**|``|
For additional compatibility information, see [Compatibility](../../c-runtime-library/compatibility.md).
## See also
-[Alphabetical Function Reference](crt-alphabetical-function-reference.md)
-[_get_invalid_parameter_handler, _get_thread_local_invalid_parameter_handler](get-invalid-parameter-handler-get-thread-local-invalid-parameter-handler.md)
-[_set_invalid_parameter_handler, _set_thread_local_invalid_parameter_handler](set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler.md)
-[Parameter Validation](../../c-runtime-library/parameter-validation.md)
+[Alphabetical Function Reference](crt-alphabetical-function-reference.md)\
+[`_get_invalid_parameter_handler`, `_get_thread_local_invalid_parameter_handler`](get-invalid-parameter-handler-get-thread-local-invalid-parameter-handler.md)\
+[`_set_invalid_parameter_handler`, `_set_thread_local_invalid_parameter_handler`](set-invalid-parameter-handler-set-thread-local-invalid-parameter-handler.md)\
+[Parameter Validation](../../c-runtime-library/parameter-validation.md)
diff --git a/docs/c-runtime-library/reference/putenv-s-wputenv-s.md b/docs/c-runtime-library/reference/putenv-s-wputenv-s.md
index b65903655f4..0a4ce03eed6 100644
--- a/docs/c-runtime-library/reference/putenv-s-wputenv-s.md
+++ b/docs/c-runtime-library/reference/putenv-s-wputenv-s.md
@@ -8,11 +8,10 @@ api_type: ["DLLExport"]
topic_type: ["apiref"]
f1_keywords: ["putenv_s", "wputenv_s", "_wputenv_s", "_putenv_s"]
helpviewer_keywords: ["wputenv_s function", "_putenv_s function", "environment variables, deleting", "putenv_s function", "_wputenv_s function", "environment variables, creating", "environment variables, modifying"]
-ms.assetid: fbf51225-a8da-4b9b-9d7c-0b84ef72df18
---
-# _putenv_s, _wputenv_s
+# `_putenv_s`, `_wputenv_s`
-Creates, modifies, or removes environment variables. These are versions of [_putenv, _wputenv](putenv-wputenv.md) but have security enhancements, as described in [Security Features in the CRT](../../c-runtime-library/security-features-in-the-crt.md).
+Creates, modifies, or removes environment variables. These are versions of [`_putenv`, `_wputenv`](putenv-wputenv.md) but have security enhancements, as described in [Security Features in the CRT](../../c-runtime-library/security-features-in-the-crt.md).
> [!IMPORTANT]
> This API cannot be used in applications that execute in the Windows Runtime. For more information, see [CRT functions not supported in Universal Windows Platform apps](../../cppcx/crt-functions-not-supported-in-universal-windows-platform-apps.md).
@@ -32,10 +31,10 @@ errno_t _wputenv_s(
### Parameters
-*varname*
+*`varname`*\
The environment variable name.
-*value_string*
+*`value_string`*\
The value to set the environment variable to.
## Return Value
@@ -44,51 +43,51 @@ Returns 0 if successful, or an error code.
### Error Conditions
-|*varname*|*value_string*|Return value|
+|*`varname`*|*`value_string`*|Return value|
|------------|-------------|------------------|
-|**NULL**|any|**EINVAL**|
-|any|**NULL**|**EINVAL**|
+|**`NULL`**|any|**`EINVAL`**|
+|any|**`NULL`**|**`EINVAL`**|
-If one of the error conditions occurs, these functions invoke an invalid parameter handler, as described in [Parameter Validation](../../c-runtime-library/parameter-validation.md). If execution is allowed to continue, these functions return **EINVAL** and set **errno** to **EINVAL**.
+If one of the error conditions occurs, these functions invoke an invalid parameter handler, as described in [Parameter Validation](../../c-runtime-library/parameter-validation.md). If execution is allowed to continue, these functions return **`EINVAL`** and set **`errno`** to **`EINVAL`**.
## Remarks
-The **_putenv_s** function adds new environment variables or modifies the values of existing environment variables. Environment variables define the environment in which a process executes (for example, the default search path for libraries to be linked with a program). **_wputenv_s** is a wide-character version of **_putenv_s**; the *envstring* argument to **_wputenv_s** is a wide-character string.
+The **`_putenv_s`** function adds new environment variables or modifies the values of existing environment variables. Environment variables define the environment in which a process executes (for example, the default search path for libraries to be linked with a program). **`_wputenv_s`** is a wide-character version of **`_putenv_s`**; the *`envstring`* argument to **`_wputenv_s`** is a wide-character string.
By default, this function's global state is scoped to the application. To change this, see [Global state in the CRT](../global-state.md).
### Generic-Text Routine Mappings
-|TCHAR.H routine|_UNICODE & _MBCS not defined|_MBCS defined|_UNICODE defined|
+|`TCHAR.H` routine|`_UNICODE & _MBCS` not defined|`_MBCS` defined|`_UNICODE` defined|
|---------------------|------------------------------------|--------------------|-----------------------|
-|**_tputenv_s**|**_putenv_s**|**_putenv_s**|**_wputenv_s**|
+|**`_tputenv_s`**|**`_putenv_s`**|**`_putenv_s`**|**`_wputenv_s`**|
-*varname* is the name of the environment variable to be added or modified and *value_string* is the variable's value. If *varname* is already part of the environment, its value is replaced by *value_string*; otherwise, the new *varname* variable and its *value_string* are added to the environment. You can remove a variable from the environment by specifying an empty string (that is, "") for *value_string*.
+*`varname`* is the name of the environment variable to be added or modified and *`value_string`* is the variable's value. If *`varname`* is already part of the environment, its value is replaced by *`value_string`*; otherwise, the new *`varname`* variable and its *`value_string`* are added to the environment. You can remove a variable from the environment by specifying an empty string (that is, `""`) for *`value_string`*.
-**_putenv_s** and **_wputenv_s** affect only the environment that is local to the current process; you cannot use them to modify the command-level environment. These functions operate only on data structures that are accessible to the run-time library and not on the environment "segment" that the operating system creates for a process. When the current process terminates, the environment reverts to the level of the calling process, which in most cases is the operating-system level. However, the modified environment can be passed to any new processes that are created by **_spawn**, **_exec**, or **system**, and these new processes get any new items that are added by **_putenv_s** and **_wputenv_s**.
+**`_putenv_s`** and **`_wputenv_s`** affect only the environment that is local to the current process; you can’t use them to modify the command-level environment. These functions operate only on data structures that are accessible to the run-time library and not on the environment "segment" that the operating system creates for a process. When the current process terminates, the environment reverts to the level of the calling process, which in most cases is the operating-system level. However, the modified environment can be passed to any new processes that are created by **`_spawn`**, **`_exec`**, or **`system`**, and these new processes get any new items that are added by **`_putenv_s`** and **`_wputenv_s`**.
-Do not change an environment entry directly; instead, use **_putenv_s** or **_wputenv_s** to change it. In particular, directly freeing elements of the **_environ[]** global array might cause invalid memory to be addressed.
+Don't change an environment entry directly; instead, use **`_putenv_s`** or **`_wputenv_s`** to change it. In particular, directly freeing elements of the **`_environ[]`** global array might cause invalid memory to be addressed.
-**getenv** and **_putenv_s** use the global variable **_environ** to access the environment table; **_wgetenv** and **_wputenv_s** use **_wenviron**. **_putenv_s** and **_wputenv_s** may change the value of **_environ** and **_wenviron**, and thereby invalidate the *envp* argument to **main** and the **_wenvp** argument to **wmain**. Therefore, it is safer to use **_environ** or **_wenviron** to access the environment information. For more information about the relationship of **_putenv_s** and **_wputenv_s** to global variables, see [_environ, _wenviron](../../c-runtime-library/environ-wenviron.md).
+**`getenv`** and **`_putenv_s`** use the global variable **`_environ`** to access the environment table; **`_wgetenv`** and **`_wputenv_s`** use **`_wenviron`**. **`_putenv_s`** and **`_wputenv_s`** may change the value of **`_environ`** and **`_wenviron`**, and thereby invalidate the *`envp`* argument to **`main`** and the **`_wenvp`** argument to **`wmain`**. Therefore, it's safer to use **`_environ`** or **`_wenviron`** to access the environment information. For more information about the relationship of **`_putenv_s`** and **`_wputenv_s`** to global variables, see [`_environ`, `_wenviron`](../../c-runtime-library/environ-wenviron.md).
> [!NOTE]
-> The **_putenv_s** and **_getenv_s** families of functions are not thread-safe. **_getenv_s** could return a string pointer while **_putenv_s** is modifying the string, and thereby cause random failures. Make sure that calls to these functions are synchronized.
+> The **`_putenv_s`** and **`_getenv_s`** families of functions are not thread-safe. **`_getenv_s`** could return a string pointer while **`_putenv_s`** is modifying the string, and thereby cause random failures. Make sure that calls to these functions are synchronized.
## Requirements
|Routine|Required header|
|-------------|---------------------|
-|**_putenv_s**|\|
-|**_wputenv_s**|\ or \|
+|**`_putenv_s`**|``|
+|**`_wputenv_s`**|`` or ``|
For additional compatibility information, see [Compatibility](../../c-runtime-library/compatibility.md).
## Example
-For a sample that shows how to use **_putenv_s**, see [getenv_s, _wgetenv_s](getenv-s-wgetenv-s.md).
+For a sample that shows how to use **`_putenv_s`**, see [`getenv_s`, `_wgetenv_s`](getenv-s-wgetenv-s.md).
## See also
-[Process and Environment Control](../../c-runtime-library/process-and-environment-control.md)
-[getenv, _wgetenv](getenv-wgetenv.md)
-[_searchenv, _wsearchenv](searchenv-wsearchenv.md)
+[Process and Environment Control](../../c-runtime-library/process-and-environment-control.md)\
+[`getenv`, `_wgetenv`](getenv-wgetenv.md)\
+[`_searchenv`, `_wsearchenv`](searchenv-wsearchenv.md)
diff --git a/docs/mfc/reference/ccommandlineinfo-class.md b/docs/mfc/reference/ccommandlineinfo-class.md
index 364e9d93cf9..944fb85dd15 100644
--- a/docs/mfc/reference/ccommandlineinfo-class.md
+++ b/docs/mfc/reference/ccommandlineinfo-class.md
@@ -4,9 +4,8 @@ title: "CCommandLineInfo Class"
ms.date: "11/04/2016"
f1_keywords: ["CCommandLineInfo", "AFXWIN/CCommandLineInfo", "AFXWIN/CCommandLineInfo::CCommandLineInfo", "AFXWIN/CCommandLineInfo::ParseParam", "AFXWIN/CCommandLineInfo::m_bRunAutomated", "AFXWIN/CCommandLineInfo::m_bRunEmbedded", "AFXWIN/CCommandLineInfo::m_bShowSplash", "AFXWIN/CCommandLineInfo::m_nShellCommand", "AFXWIN/CCommandLineInfo::m_strDriverName", "AFXWIN/CCommandLineInfo::m_strFileName", "AFXWIN/CCommandLineInfo::m_strPortName", "AFXWIN/CCommandLineInfo::m_strPrinterName", "AFXWIN/CCommandLineInfo::m_strRestartIdentifier"]
helpviewer_keywords: ["CCommandLineInfo [MFC], CCommandLineInfo", "CCommandLineInfo [MFC], ParseParam", "CCommandLineInfo [MFC], m_bRunAutomated", "CCommandLineInfo [MFC], m_bRunEmbedded", "CCommandLineInfo [MFC], m_bShowSplash", "CCommandLineInfo [MFC], m_nShellCommand", "CCommandLineInfo [MFC], m_strDriverName", "CCommandLineInfo [MFC], m_strFileName", "CCommandLineInfo [MFC], m_strPortName", "CCommandLineInfo [MFC], m_strPrinterName", "CCommandLineInfo [MFC], m_strRestartIdentifier"]
-ms.assetid: 3e313ddb-0a82-4991-87ac-a27feff4668c
---
-# CCommandLineInfo Class
+# `CCommandLineInfo` Class
Aids in parsing the command line at application startup.
@@ -22,31 +21,31 @@ class CCommandLineInfo : public CObject
|Name|Description|
|----------|-----------------|
-|[CCommandLineInfo::CCommandLineInfo](#ccommandlineinfo)|Constructs a default `CCommandLineInfo` object.|
+|[`CCommandLineInfo::CCommandLineInfo`](#ccommandlineinfo)|Constructs a default `CCommandLineInfo` object.|
### Public Methods
|Name|Description|
|----------|-----------------|
-|[CCommandLineInfo::ParseParam](#parseparam)|Override this callback to parse individual parameters.|
+|[`CCommandLineInfo::ParseParam`](#parseparam)|Override this callback to parse individual parameters.|
### Public Data Members
|Name|Description|
|----------|-----------------|
-|[CCommandLineInfo::m_bRunAutomated](#m_brunautomated)|Indicates the command-line `/Automation` option was found.|
-|[CCommandLineInfo::m_bRunEmbedded](#m_brunembedded)|Indicates the command-line `/Embedding` option was found.|
-|[CCommandLineInfo::m_bShowSplash](#m_bshowsplash)|Indicates if a splash screen should be shown.|
-|[CCommandLineInfo::m_nShellCommand](#m_nshellcommand)|Indicates the shell command to be processed.|
-|[CCommandLineInfo::m_strDriverName](#m_strdrivername)|Indicates the driver name if the shell command is Print To; otherwise empty.|
-|[CCommandLineInfo::m_strFileName](#m_strfilename)|Indicates the file name to be opened or printed; empty if the shell command is New or DDE.|
-|[CCommandLineInfo::m_strPortName](#m_strportname)|Indicates the port name if the shell command is Print To; otherwise empty.|
-|[CCommandLineInfo::m_strPrinterName](#m_strprintername)|Indicates the printer name if the shell command is Print To; otherwise empty.|
-|[CCommandLineInfo::m_strRestartIdentifier](#m_strrestartidentifier)|Indicates the unique restart identifier for the restart manager if the restart manager restarted the application.|
+|[`CCommandLineInfo::m_bRunAutomated`](#m_brunautomated)|Indicates the command-line `/Automation` option was found.|
+|[`CCommandLineInfo::m_bRunEmbedded`](#m_brunembedded)|Indicates the command-line `/Embedding` option was found.|
+|[`CCommandLineInfo::m_bShowSplash`](#m_bshowsplash)|Indicates if a splash screen should be shown.|
+|[`CCommandLineInfo::m_nShellCommand`](#m_nshellcommand)|Indicates the shell command to be processed.|
+|[`CCommandLineInfo::m_strDriverName`](#m_strdrivername)|Indicates the driver name if the shell command is Print To; otherwise empty.|
+|[`CCommandLineInfo::m_strFileName`](#m_strfilename)|Indicates the file name to be opened or printed; empty if the shell command is New or DDE.|
+|[`CCommandLineInfo::m_strPortName`](#m_strportname)|Indicates the port name if the shell command is Print To; otherwise empty.|
+|[`CCommandLineInfo::m_strPrinterName`](#m_strprintername)|Indicates the printer name if the shell command is Print To; otherwise empty.|
+|[`CCommandLineInfo::m_strRestartIdentifier`](#m_strrestartidentifier)|Indicates the unique restart identifier for the restart manager if the restart manager restarted the application.|
## Remarks
-An MFC application will typically create a local instance of this class in the [InitInstance](../../mfc/reference/cwinapp-class.md#initinstance) function of its application object. This object is then passed to [CWinApp::ParseCommandLine](../../mfc/reference/cwinapp-class.md#parsecommandline), which repeatedly calls [ParseParam](#parseparam) to fill the `CCommandLineInfo` object. The `CCommandLineInfo` object is then passed to [CWinApp::ProcessShellCommand](../../mfc/reference/cwinapp-class.md#processshellcommand) to handle the command-line arguments and flags.
+An MFC application will typically create a local instance of this class in the [`InitInstance`](../../mfc/reference/cwinapp-class.md#initinstance) function of its application object. This object is then passed to [`CWinApp::ParseCommandLine`](../../mfc/reference/cwinapp-class.md#parsecommandline), which repeatedly calls [`ParseParam`](#parseparam) to fill the `CCommandLineInfo` object. The `CCommandLineInfo` object is then passed to [`CWinApp::ProcessShellCommand`](../../mfc/reference/cwinapp-class.md#processshellcommand) to handle the command-line arguments and flags.
You can use this object to encapsulate the following command-line options and parameters:
@@ -62,7 +61,7 @@ You can use this object to encapsulate the following command-line options and pa
|*app* `/Register`
*app* `/Regserver`|Informs the application to perform any registration tasks.|
|*app* `/Unregister`
*app* `/Unregserver`|Informs the application to perform any un-registration tasks.|
-Derive a new class from `CCommandLineInfo` to handle other flags and parameter values. Override [ParseParam](#parseparam) to handle the new flags.
+Derive a new class from `CCommandLineInfo` to handle other flags and parameter values. Override [`ParseParam`](#parseparam) to handle the new flags.
## Inheritance Hierarchy
@@ -72,9 +71,9 @@ Derive a new class from `CCommandLineInfo` to handle other flags and parameter v
## Requirements
-**Header:** afxwin.h
+**Header:** `afxwin.h`
-## CCommandLineInfo::CCommandLineInfo
+## `CCommandLineInfo::CCommandLineInfo`
This constructor creates a `CCommandLineInfo` object with default values.
@@ -84,15 +83,15 @@ CCommandLineInfo();
### Remarks
-The default is to show the splash screen ( `m_bShowSplash=TRUE`) and to execute the New command on the File menu ( `m_nShellCommand`**=NewFile**).
+The default is to show the splash screen ( `m_bShowSplash=TRUE`) and to execute the **New** command on the **File** menu ( `m_nShellCommand`**`=NewFile`**).
-The application framework calls [ParseParam](#parseparam) to fill data members of this object.
+The application framework calls [`ParseParam`](#parseparam) to fill data members of this object.
### Example
[!code-cpp[NVC_MFCDocView#54](../../mfc/codesnippet/cpp/ccommandlineinfo-class_1.cpp)]
-## CCommandLineInfo::m_bRunAutomated
+## `CCommandLineInfo::m_bRunAutomated`
Indicates that the `/Automation` flag was found on the command line.
@@ -102,9 +101,9 @@ BOOL m_bRunAutomated;
### Remarks
-If TRUE, this means start up as an OLE automation server.
+If `TRUE`, this means start up as an OLE automation server.
-## CCommandLineInfo::m_bRunEmbedded
+## `CCommandLineInfo::m_bRunEmbedded`
Indicates that the `/Embedding` flag was found on the command line.
@@ -114,9 +113,9 @@ BOOL m_bRunEmbedded;
### Remarks
-If TRUE, this means start up for editing an embedded OLE item.
+If `TRUE`, this means start up for editing an embedded OLE item.
-## CCommandLineInfo::m_bShowSplash
+## `CCommandLineInfo::m_bShowSplash`
Indicates that the splash screen should be displayed.
@@ -126,9 +125,9 @@ BOOL m_bShowSplash;
### Remarks
-If TRUE, this means the splash screen for this application should be displayed during startup. The default implementation of [ParseParam](#parseparam) sets this data member to TRUE if [m_nShellCommand](#m_nshellcommand) is equal to `CCommandLineInfo::FileNew`.
+If `TRUE`, this means the splash screen for this application should be displayed during startup. The default implementation of [`ParseParam`](#parseparam) sets this data member to `TRUE` if [`m_nShellCommand`](#m_nshellcommand) is equal to `CCommandLineInfo::FileNew`.
-## CCommandLineInfo::m_nShellCommand
+## `CCommandLineInfo::m_nShellCommand`
Indicates the shell command for this instance of the application.
@@ -172,13 +171,13 @@ For a brief description of these values, see the following list.
- `CCommandLineInfo::RestartByRestartManager` Indicates that the application was restarted by the restart manager.
-- `CCommandLineInfo::FileNothing` Turns off the display of a new MDI child window on startup. By design, Application Wizard-generated MDI applications display a new child window on startup. To turn off this feature, an application can use `CCommandLineInfo::FileNothing` as the shell command when it calls [ProcessShellCommand](../../mfc/reference/cwinapp-class.md#processshellcommand). `ProcessShellCommand` is called by the `InitInstance( )` of all `CWinApp` derived classes.
+- `CCommandLineInfo::FileNothing` Turns off the display of a new MDI child window on startup. By design, Application Wizard-generated MDI applications display a new child window on startup. To turn off this feature, an application can use `CCommandLineInfo::FileNothing` as the shell command when it calls [`ProcessShellCommand`](../../mfc/reference/cwinapp-class.md#processshellcommand). `ProcessShellCommand` is called by the `InitInstance( )` of all `CWinApp` derived classes.
### Example
[!code-cpp[NVC_MFCDocView#55](../../mfc/codesnippet/cpp/ccommandlineinfo-class_2.cpp)]
-## CCommandLineInfo::m_strDriverName
+## `CCommandLineInfo::m_strDriverName`
Stores the value of the third non-flag parameter on the command line.
@@ -188,9 +187,9 @@ CString m_strDriverName;
### Remarks
-This parameter is typically the name of the printer driver for a Print To shell command. The default implementation of [ParseParam](#parseparam) sets this data member only if the `/pt` flag was found on the command line.
+This parameter is typically the name of the printer driver for a Print To shell command. The default implementation of [`ParseParam`](#parseparam) sets this data member only if the `/pt` flag was found on the command line.
-## CCommandLineInfo::m_strFileName
+## `CCommandLineInfo::m_strFileName`
Stores the value of the first non-flag parameter on the command line.
@@ -202,7 +201,7 @@ CString m_strFileName;
This parameter is typically the name of the file to open.
-## CCommandLineInfo::m_strPortName
+## `CCommandLineInfo::m_strPortName`
Stores the value of the fourth non-flag parameter on the command line.
@@ -212,9 +211,9 @@ CString m_strPortName;
### Remarks
-This parameter is typically the name of the printer port for a Print To shell command. The default implementation of [ParseParam](#parseparam) sets this data member only if the `/pt` flag was found on the command line.
+This parameter is typically the name of the printer port for a Print To shell command. The default implementation of [`ParseParam`](#parseparam) sets this data member only if the `/pt` flag was found on the command line.
-## CCommandLineInfo::m_strPrinterName
+## `CCommandLineInfo::m_strPrinterName`
Stores the value of the second non-flag parameter on the command line.
@@ -224,9 +223,9 @@ CString m_strPrinterName;
### Remarks
-This parameter is typically the name of the printer for a Print To shell command. The default implementation of [ParseParam](#parseparam) sets this data member only if the `/pt` flag was found on the command line.
+This parameter is typically the name of the printer for a Print To shell command. The default implementation of [`ParseParam`](#parseparam) sets this data member only if the `/pt` flag was found on the command line.
-## CCommandLineInfo::m_strRestartIdentifier
+## `CCommandLineInfo::m_strRestartIdentifier`
The unique restart identifier on the command line.
@@ -240,7 +239,7 @@ The restart identifier is unique for each instance of the application.
If the restart manager exits the application and is configured to restart it, the restart manager executes the application from the command line with the restart identifier as an optional parameter. When the restart manager uses the restart identifier, the application can reopen the previously open documents and recover autosaved files.
-## CCommandLineInfo::ParseParam
+## `CCommandLineInfo::ParseParam`
The framework calls this function to parse/interpret individual parameters from the command line. The second version differs from the first only in Unicode projects.
@@ -258,18 +257,18 @@ virtual void ParseParam(
### Parameters
-*pszParam*
+*`pszParam`*\
The parameter or flag.
-*bFlag*
-Indicates whether *pszParam* is a parameter or a flag.
+*`bFlag`*\
+Indicates whether *`pszParam`* is a parameter or a flag.
-*bLast*
+*`bLast`*\
Indicates if this is the last parameter or flag on the command line.
### Remarks
-[CWinApp::ParseCommandLine](../../mfc/reference/cwinapp-class.md#parsecommandline) calls `ParseParam` once for each parameter or flag on the command line, passing the argument to *pszParam*. If the first character of the parameter is a ' **-**' or a ' **/**', then it is removed and *bFlag* is set to TRUE. When parsing the final parameter, *bLast* is set to TRUE.
+[`CWinApp::ParseCommandLine`](../../mfc/reference/cwinapp-class.md#parsecommandline) calls `ParseParam` once for each parameter or flag on the command line, passing the argument to *`pszParam`*. If the first character of the parameter is a **`-`** or a **`/`**, then it's removed and *`bFlag`* is set to `TRUE`. When parsing the final parameter, *`bLast`* is set to `TRUE`.
The default implementation of this function recognizes the following flags: `/p`, `/pt`, `/dde`, `/Automation`, and `/Embedding`, as shown in the following table:
@@ -285,17 +284,17 @@ The default implementation of this function recognizes the following flags: `/p`
|*app* `/Register`
*app* `/Regserver`|Informs the application to perform any registration tasks.|
|*app* `/Unregister`
*app* `/Unregserver`|Informs the application to perform any un-registration tasks.|
-This information is stored in [m_bRunAutomated](#m_brunautomated), [m_bRunEmbedded](#m_brunembedded), and [m_nShellCommand](#m_nshellcommand). Flags are marked by either a forward-slash ' **/**' or hyphen ' **-**'.
+This information is stored in [`m_bRunAutomated`](#m_brunautomated), [`m_bRunEmbedded`](#m_brunembedded), and [`m_nShellCommand`](#m_nshellcommand). Flags are marked by either a forward-slash **`/`** or hyphen **`-`**.
-The default implementation puts the first non-flag parameter into [m_strFileName](#m_strfilename). In the case of the `/pt` flag, the default implementation puts the second, third, and fourth non-flag parameters into [m_strPrinterName](#m_strprintername), [m_strDriverName](#m_strdrivername), and [m_strPortName](#m_strportname), respectively.
+The default implementation puts the first non-flag parameter into [`m_strFileName`](#m_strfilename). In the case of the `/pt` flag, the default implementation puts the second, third, and fourth non-flag parameters into [`m_strPrinterName`](#m_strprintername), [`m_strDriverName`](#m_strdrivername), and [`m_strPortName`](#m_strportname), respectively.
-The default implementation also sets [m_bShowSplash](#m_bshowsplash) to TRUE only in the case of a new file. In the case of a new file, the user has taken action involving the application itself. In any other case, including opening existing files using the shell, the user action involves the file directly. In a document-centric standpoint, the splash screen does not need to announce the application starting up.
+The default implementation also sets [`m_bShowSplash`](#m_bshowsplash) to `TRUE` only in the case of a new file. In the case of a new file, the user has taken action involving the application itself. In any other case, including opening existing files using the shell, the user action involves the file directly. In a document-centric standpoint, the splash screen doesn't need to announce the application starting up.
Override this function in your derived class to handle other flag and parameter values.
## See also
-[CObject Class](../../mfc/reference/cobject-class.md)
-[Hierarchy Chart](../../mfc/hierarchy-chart.md)
-[CWinApp::ParseCommandLine](../../mfc/reference/cwinapp-class.md#parsecommandline)
-[CWinApp::ProcessShellCommand](../../mfc/reference/cwinapp-class.md#processshellcommand)
+[`CObject` Class](../../mfc/reference/cobject-class.md)\
+[Hierarchy Chart](../../mfc/hierarchy-chart.md)\
+[`CWinApp::ParseCommandLine`](../../mfc/reference/cwinapp-class.md#parsecommandline)\
+[`CWinApp::ProcessShellCommand`](../../mfc/reference/cwinapp-class.md#processshellcommand)
diff --git a/docs/mfc/reference/cfolderpickerdialog-class.md b/docs/mfc/reference/cfolderpickerdialog-class.md
index ef92a2edeca..de4f2750fa3 100644
--- a/docs/mfc/reference/cfolderpickerdialog-class.md
+++ b/docs/mfc/reference/cfolderpickerdialog-class.md
@@ -4,11 +4,10 @@ title: "CFolderPickerDialog Class"
ms.date: "03/27/2019"
f1_keywords: ["CFolderPickerDialog", "AFXDLGS/CFolderPickerDialog", "AFXDLGS/CFolderPickerDialog::CFolderPickerDialog"]
helpviewer_keywords: ["CFolderPickerDialog [MFC], CFolderPickerDialog"]
-ms.assetid: 8db01684-dd1d-4e9c-989e-07a2318a8156
---
-# CFolderPickerDialog Class
+# `CFolderPickerDialog` Class
-CFolderPickerDialog class implements CFileDialog in the folder picker mode.
+`CFolderPickerDialog` class implements `CFileDialog` in the folder picker mode.
## Syntax
@@ -22,32 +21,32 @@ class CFolderPickerDialog : public CFileDialog;
|Name|Description|
|----------|-----------------|
-|[CFolderPickerDialog::~CFolderPickerDialog](#_dtorcfolderpickerdialog)|Destructor.|
-|[CFolderPickerDialog::CFolderPickerDialog](#cfolderpickerdialog)|Constructor.|
+|[`CFolderPickerDialog::~CFolderPickerDialog`](#_dtorcfolderpickerdialog)|Destructor.|
+|[`CFolderPickerDialog::CFolderPickerDialog`](#cfolderpickerdialog)|Constructor.|
## Remarks
## Inheritance Hierarchy
-[CObject](../../mfc/reference/cobject-class.md)
+[`CObject`](../../mfc/reference/cobject-class.md)
-[CCmdTarget](../../mfc/reference/ccmdtarget-class.md)
+[`CCmdTarget`](../../mfc/reference/ccmdtarget-class.md)
-[CWnd](../../mfc/reference/cwnd-class.md)
+[`CWnd`](../../mfc/reference/cwnd-class.md)
-[CDialog](../../mfc/reference/cdialog-class.md)
+[`CDialog`](../../mfc/reference/cdialog-class.md)
-[CCommonDialog](../../mfc/reference/ccommondialog-class.md)
+[`CCommonDialog`](../../mfc/reference/ccommondialog-class.md)
-[CFileDialog](../../mfc/reference/cfiledialog-class.md)
+[`CFileDialog`](../../mfc/reference/cfiledialog-class.md)
`CFolderPickerDialog`
## Requirements
-**Header:** afxdlgs.h
+**Header:** `afxdlgs.h`
-## CFolderPickerDialog::CFolderPickerDialog
+## `CFolderPickerDialog::CFolderPickerDialog`
Constructor.
@@ -61,21 +60,21 @@ explicit CFolderPickerDialog(
### Parameters
-*lpszFolder*
+*`lpszFolder`*\
Initial folder.
-*dwFlags*
+*`dwFlags`*\
A combination of one or more flags that allow you to customize the dialog box.
-*pParentWnd*
+*`pParentWnd`*\
A pointer to the dialog box object's parent or owner window.
-*dwSize*
-The size of the OPENFILENAME structure.
+*`dwSize`*\
+The size of the `OPENFILENAME` structure.
### Remarks
-## CFolderPickerDialog::~CFolderPickerDialog
+## `CFolderPickerDialog::~CFolderPickerDialog`
Destructor.
diff --git a/docs/mfc/reference/cmdiframewndex-class.md b/docs/mfc/reference/cmdiframewndex-class.md
index 71ca3bc5816..b7b8d1f72ba 100644
--- a/docs/mfc/reference/cmdiframewndex-class.md
+++ b/docs/mfc/reference/cmdiframewndex-class.md
@@ -4,11 +4,10 @@ title: "CMDIFrameWndEx Class"
ms.date: "11/04/2016"
f1_keywords: ["CMDIFrameWndEx", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::ActiveItemRecalcLayout", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::AddPane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::AdjustClientArea", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::AdjustDockingLayout", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::AreMDITabs", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::CanCovertControlBarToMDIChild", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::ControlBarToTabbedDocument", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::CreateDocumentWindow", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::CreateNewWindow", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::DockPane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::DockPaneLeftOf", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableAutoHidePanes", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableDocking", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableFullScreenMainMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableFullScreenMode", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableLoadDockState", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableMDITabbedGroups", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableMDITabs", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableMDITabsLastActiveActivation", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnablePaneMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::EnableWindowsDialog", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetActivePopup", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetPane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetDefaultResId", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetMDITabGroups", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetMDITabs", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetMenuBar", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetRibbonBar", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetTearOffBars", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::GetToolbarButtonToolTipText", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::InsertPane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::IsFullScreen", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::IsMDITabbedGroup", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::IsMemberOfMDITabGroup", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::IsMenuBarAvailable", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::IsPointNearDockSite", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::IsPrintPreview", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::LoadFrame", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::LoadMDIState", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::MDITabMoveToNextGroup", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::MDITabNewGroup", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::NegotiateBorderSpace", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnCloseDockingPane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnCloseMiniFrame", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnClosePopupMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnCmdMsg", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnDrawMenuImage", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnDrawMenuLogo", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnEraseMDIClientBackground", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnMenuButtonToolHitTest", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnMoveMiniFrame", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnSetPreviewMode", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnShowCustomizePane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnShowMDITabContextMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnShowPanes", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnShowPopupMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnSizeMDIClient", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnTearOffMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::OnUpdateFrameMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::PaneFromPoint", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::RecalcLayout", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::RemovePaneFromDockManager", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::SaveMDIState", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::SetPrintPreviewFrame", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::SetupToolbarMenu", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::ShowFullScreen", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::ShowPane", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::ShowWindowsDialog", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::TabbedDocumentToControlBar", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::UpdateCaption", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::UpdateMDITabbedBarsIcons", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::WinHelp", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild", "AFXMDIFRAMEWNDEX/CMDIFrameWndEx::m_bDisableSetRedraw"]
helpviewer_keywords: ["CMDIFrameWndEx [MFC], ActiveItemRecalcLayout", "CMDIFrameWndEx [MFC], AddPane", "CMDIFrameWndEx [MFC], AdjustClientArea", "CMDIFrameWndEx [MFC], AdjustDockingLayout", "CMDIFrameWndEx [MFC], AreMDITabs", "CMDIFrameWndEx [MFC], CanCovertControlBarToMDIChild", "CMDIFrameWndEx [MFC], ControlBarToTabbedDocument", "CMDIFrameWndEx [MFC], CreateDocumentWindow", "CMDIFrameWndEx [MFC], CreateNewWindow", "CMDIFrameWndEx [MFC], DockPane", "CMDIFrameWndEx [MFC], DockPaneLeftOf", "CMDIFrameWndEx [MFC], EnableAutoHidePanes", "CMDIFrameWndEx [MFC], EnableDocking", "CMDIFrameWndEx [MFC], EnableFullScreenMainMenu", "CMDIFrameWndEx [MFC], EnableFullScreenMode", "CMDIFrameWndEx [MFC], EnableLoadDockState", "CMDIFrameWndEx [MFC], EnableMDITabbedGroups", "CMDIFrameWndEx [MFC], EnableMDITabs", "CMDIFrameWndEx [MFC], EnableMDITabsLastActiveActivation", "CMDIFrameWndEx [MFC], EnablePaneMenu", "CMDIFrameWndEx [MFC], EnableWindowsDialog", "CMDIFrameWndEx [MFC], GetActivePopup", "CMDIFrameWndEx [MFC], GetPane", "CMDIFrameWndEx [MFC], GetDefaultResId", "CMDIFrameWndEx [MFC], GetMDITabGroups", "CMDIFrameWndEx [MFC], GetMDITabs", "CMDIFrameWndEx [MFC], GetMDITabsContextMenuAllowedItems", "CMDIFrameWndEx [MFC], GetMenuBar", "CMDIFrameWndEx [MFC], GetRibbonBar", "CMDIFrameWndEx [MFC], GetTearOffBars", "CMDIFrameWndEx [MFC], GetToolbarButtonToolTipText", "CMDIFrameWndEx [MFC], InsertPane", "CMDIFrameWndEx [MFC], IsFullScreen", "CMDIFrameWndEx [MFC], IsMDITabbedGroup", "CMDIFrameWndEx [MFC], IsMemberOfMDITabGroup", "CMDIFrameWndEx [MFC], IsMenuBarAvailable", "CMDIFrameWndEx [MFC], IsPointNearDockSite", "CMDIFrameWndEx [MFC], IsPrintPreview", "CMDIFrameWndEx [MFC], LoadFrame", "CMDIFrameWndEx [MFC], LoadMDIState", "CMDIFrameWndEx [MFC], MDITabMoveToNextGroup", "CMDIFrameWndEx [MFC], MDITabNewGroup", "CMDIFrameWndEx [MFC], NegotiateBorderSpace", "CMDIFrameWndEx [MFC], OnCloseDockingPane", "CMDIFrameWndEx [MFC], OnCloseMiniFrame", "CMDIFrameWndEx [MFC], OnClosePopupMenu", "CMDIFrameWndEx [MFC], OnCmdMsg", "CMDIFrameWndEx [MFC], OnDrawMenuImage", "CMDIFrameWndEx [MFC], OnDrawMenuLogo", "CMDIFrameWndEx [MFC], OnEraseMDIClientBackground", "CMDIFrameWndEx [MFC], OnMenuButtonToolHitTest", "CMDIFrameWndEx [MFC], OnMoveMiniFrame", "CMDIFrameWndEx [MFC], OnSetPreviewMode", "CMDIFrameWndEx [MFC], OnShowCustomizePane", "CMDIFrameWndEx [MFC], OnShowMDITabContextMenu", "CMDIFrameWndEx [MFC], OnShowPanes", "CMDIFrameWndEx [MFC], OnShowPopupMenu", "CMDIFrameWndEx [MFC], OnSizeMDIClient", "CMDIFrameWndEx [MFC], OnTearOffMenu", "CMDIFrameWndEx [MFC], OnUpdateFrameMenu", "CMDIFrameWndEx [MFC], PaneFromPoint", "CMDIFrameWndEx [MFC], RecalcLayout", "CMDIFrameWndEx [MFC], RemovePaneFromDockManager", "CMDIFrameWndEx [MFC], SaveMDIState", "CMDIFrameWndEx [MFC], SetPrintPreviewFrame", "CMDIFrameWndEx [MFC], SetupToolbarMenu", "CMDIFrameWndEx [MFC], ShowFullScreen", "CMDIFrameWndEx [MFC], ShowPane", "CMDIFrameWndEx [MFC], ShowWindowsDialog", "CMDIFrameWndEx [MFC], TabbedDocumentToControlBar", "CMDIFrameWndEx [MFC], UpdateCaption", "CMDIFrameWndEx [MFC], UpdateMDITabbedBarsIcons", "CMDIFrameWndEx [MFC], WinHelp", "CMDIFrameWndEx [MFC], m_bCanCovertControlBarToMDIChild", "CMDIFrameWndEx [MFC], m_bDisableSetRedraw"]
-ms.assetid: dbcafcb3-9a7a-4f11-9dfe-ba57565c81d0
---
-# CMDIFrameWndEx Class
+# `CMDIFrameWndEx` Class
-Extends the functionality of [CMDIFrameWnd](../../mfc/reference/cframewnd-class.md), a Windows Multiple Document Interface (MDI) frame window.
+Extends the functionality of [`CMDIFrameWnd`](../../mfc/reference/cframewnd-class.md), a Windows Multiple Document Interface (MDI) frame window.
## Syntax
@@ -22,90 +21,90 @@ class CMDIFrameWndEx : public CMDIFrameWnd
|Name|Description|
|----------|-----------------|
-|[CMDIFrameWndEx::ActiveItemRecalcLayout](#activeitemrecalclayout)|Recalculates the layout of the active item.|
-|`CMDIFrameWndEx::AddDockSite`|This method is not used.|
-|[CMDIFrameWndEx::AddPane](#addpane)|Registers a pane with the docking manager.|
-|[CMDIFrameWndEx::AdjustClientArea](#adjustclientarea)|Reduces the client area to allow for a border.|
-|[CMDIFrameWndEx::AdjustDockingLayout](#adjustdockinglayout)|Recalculates the layout of all docked panes.|
-|[CMDIFrameWndEx::AreMDITabs](#aremditabs)|Determines whether the MDI Tabs feature or the MDI Tabbed Groups feature is enabled.|
-|[CMDIFrameWndEx::CanCovertControlBarToMDIChild](#cancovertcontrolbartomdichild)|Called by the framework to determine whether the frame window can convert docking panes to tabbed documents.|
-|[CMDIFrameWndEx::ControlBarToTabbedDocument](#controlbartotabbeddocument)|Converts the specified docking pane to a tabbed document.|
-|[CMDIFrameWndEx::CreateDocumentWindow](#createdocumentwindow)|Creates a child document window.|
-|[CMDIFrameWndEx::CreateNewWindow](#createnewwindow)|Called by the framework to create a new window.|
+|[`CMDIFrameWndEx::ActiveItemRecalcLayout`](#activeitemrecalclayout)|Recalculates the layout of the active item.|
+|`CMDIFrameWndEx::AddDockSite`|This method isn't used.|
+|[`CMDIFrameWndEx::AddPane`](#addpane)|Registers a pane with the docking manager.|
+|[`CMDIFrameWndEx::AdjustClientArea`](#adjustclientarea)|Reduces the client area to allow for a border.|
+|[`CMDIFrameWndEx::AdjustDockingLayout`](#adjustdockinglayout)|Recalculates the layout of all docked panes.|
+|[`CMDIFrameWndEx::AreMDITabs`](#aremditabs)|Determines whether the MDI Tabs feature or the MDI Tabbed Groups feature is enabled.|
+|[`CMDIFrameWndEx::CanCovertControlBarToMDIChild`](#cancovertcontrolbartomdichild)|Called by the framework to determine whether the frame window can convert docking panes to tabbed documents.|
+|[`CMDIFrameWndEx::ControlBarToTabbedDocument`](#controlbartotabbeddocument)|Converts the specified docking pane to a tabbed document.|
+|[`CMDIFrameWndEx::CreateDocumentWindow`](#createdocumentwindow)|Creates a child document window.|
+|[`CMDIFrameWndEx::CreateNewWindow`](#createnewwindow)|Called by the framework to create a new window.|
|`CMDIFrameWndEx::CreateObject`|Used by the framework to create a dynamic instance of this class type.|
-|[CMDIFrameWndEx::DockPane](#dockpane)|Docks the specified pane to the frame window.|
-|[CMDIFrameWndEx::DockPaneLeftOf](#dockpaneleftof)|Docks one pane to the left of another pane.|
-|[CMDIFrameWndEx::EnableAutoHidePanes](#enableautohidepanes)|Enables auto-hide mode for panes when they are docked at specified sides of the main frame window.|
-|[CMDIFrameWndEx::EnableDocking](#enabledocking)|Enables docking of the panes that belong to the MDI frame window.|
-|[CMDIFrameWndEx::EnableFullScreenMainMenu](#enablefullscreenmainmenu)|Shows or hides the main menu in full-screen mode.|
-|[CMDIFrameWndEx::EnableFullScreenMode](#enablefullscreenmode)|Enables full-screen mode for the frame window.|
-|[CMDIFrameWndEx::EnableLoadDockState](#enableloaddockstate)|Enables or disables the loading of the docking state.|
-|[CMDIFrameWndEx::EnableMDITabbedGroups](#enablemditabbedgroups)|Enables or disables the MDI Tabbed Groups feature.|
-|[CMDIFrameWndEx::EnableMDITabs](#enablemditabs)|Enables or disables the MDI Tabs feature. When enabled, the frame window displays a tab for each MDI child window.|
-|[CMDIFrameWndEx::EnableMDITabsLastActiveActivation](#enablemditabslastactiveactivation)|Specifies whether the last active tab should be activated when the user closes the current tab.|
-|[CMDIFrameWndEx::EnablePaneMenu](#enablepanemenu)|Enables or disables automatic creation and management of the pop-up pane menu, which displays a list of application panes. .|
-|[CMDIFrameWndEx::EnableWindowsDialog](#enablewindowsdialog)|Inserts a menu item whose command ID calls a [CMFCWindowsManagerDialog](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) dialog box.|
-|[CMDIFrameWndEx::GetActivePopup](#getactivepopup)|Returns a pointer to the currently displayed popup menu.|
-|[CMDIFrameWndEx::GetPane](#getpane)|Returns a pointer to the pane that has the specified control ID.|
-|[CMDIFrameWndEx::GetDefaultResId](#getdefaultresid)|Returns the ID of shared resources of the MDI frame window.|
-|[CMDIFrameWndEx::GetMDITabGroups](#getmditabgroups)|Returns a list of MDI tabbed windows.|
-|[CMDIFrameWndEx::GetMDITabs](#getmditabs)|Returns a reference to the underlined tabbed window.|
-|[CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems](#getmditabscontextmenualloweditems)|Returns a combination of flags that determines what context menu items are valid when the MDI Tabbed Groups feature is enabled.|
-|[CMDIFrameWndEx::GetMenuBar](#getmenubar)|Returns a pointer to a menu bar object attached to the frame window.|
-|[CMDIFrameWndEx::GetRibbonBar](#getribbonbar)|Retrieves the ribbon bar control for the frame.|
-|[CMDIFrameWndEx::GetTearOffBars](#gettearoffbars)|Returns a list of [CPane](../../mfc/reference/cpane-class.md)-derived objects that are in a tear-off state.|
-|`CMDIFrameWndEx::GetThisClass`|Called by the framework to obtain a pointer to the [CRuntimeClass](../../mfc/reference/cruntimeclass-structure.md) object that is associated with this class type.|
-|[CMDIFrameWndEx::GetToolbarButtonToolTipText](#gettoolbarbuttontooltiptext)|Called by the framework when the application displays the tooltip for a toolbar button.|
-|[CMDIFrameWndEx::InsertPane](#insertpane)|Registers the specified pane with the docking manager.|
-|[CMDIFrameWndEx::IsFullScreen](#isfullscreen)|Determines whether the frame window is in full-screen mode.|
-|[CMDIFrameWndEx::IsMDITabbedGroup](#ismditabbedgroup)|Determines whether the MDI Tabbed Groups feature is enabled.|
-|[CMDIFrameWndEx::IsMemberOfMDITabGroup](#ismemberofmditabgroup)|Determines whether the specified tabbed window is in the list of windows that are in MDI Tabbed Groups.|
-|[CMDIFrameWndEx::IsMenuBarAvailable](#ismenubaravailable)|Determines whether the frame window has a menu bar.|
-|[CMDIFrameWndEx::IsPointNearDockSite](#ispointneardocksite)|Determines whether a specified point is near the dock site.|
-|[CMDIFrameWndEx::IsPrintPreview](#isprintpreview)|Determines whether the frame window is in print-preview mode.|
-|[CMDIFrameWndEx::LoadFrame](#loadframe)|Creates a frame window from resource information. (Overrides `CMDIFrameWnd::LoadFrame`.)|
-|[CMDIFrameWndEx::LoadMDIState](#loadmdistate)|Loads the specified layout of MDI Tabbed Groups and the list of previously opened documents.|
-|[CMDIFrameWndEx::MDITabMoveToNextGroup](#mditabmovetonextgroup)|Moves the active tab from the currently active tabbed window to the next or previous tabbed group.|
-|[CMDIFrameWndEx::MDITabNewGroup](#mditabnewgroup)|Creates a new tabbed group that has a single window.|
-|[CMDIFrameWndEx::NegotiateBorderSpace](#negotiateborderspace)|Negotiates border space in a frame window during OLE in-place activation.|
-|[CMDIFrameWndEx::OnCloseDockingPane](#onclosedockingpane)|Called by the framework when the user clicks the **Close** button on a dockable pane.|
-|[CMDIFrameWndEx::OnCloseMiniFrame](#oncloseminiframe)|Called by the framework when the user clicks the **Close** button on a floating mini frame window.|
-|[CMDIFrameWndEx::OnClosePopupMenu](#onclosepopupmenu)|Called by the framework when an active pop-up menu processes a WM_DESTROY message.|
-|[CMDIFrameWndEx::OnCmdMsg](#oncmdmsg)|Called by the framework to route and dispatch command messages and to update command user-interface objects.|
-|[CMDIFrameWndEx::OnDrawMenuImage](#ondrawmenuimage)|Called by the framework when the image associated with a menu item is drawn.|
-|[CMDIFrameWndEx::OnDrawMenuLogo](#ondrawmenulogo)|Called by the framework when a [CMFCPopupMenu](../../mfc/reference/cmfcpopupmenu-class.md)processes a WM_PAINT message.|
-|[CMDIFrameWndEx::OnEraseMDIClientBackground](#onerasemdiclientbackground)|Called by the framework when the MDI frame window processes a WM_ERASEBKGND message.|
-|[CMDIFrameWndEx::OnMenuButtonToolHitTest](#onmenubuttontoolhittest)|Called by the framework when a [CMFCToolBarButton](../../mfc/reference/cmfctoolbarbutton-class.md)object processes a WM_NCHITTEST message.|
-|[CMDIFrameWndEx::OnMoveMiniFrame](#onmoveminiframe)|Called by the framework to move a mini-frame window.|
-|[CMDIFrameWndEx::OnSetPreviewMode](#onsetpreviewmode)|Sets the application's main frame window print-preview mode. (Overrides [CFrameWnd::OnSetPreviewMode](../../mfc/reference/cframewnd-class.md#onsetpreviewmode).)|
-|[CMDIFrameWndEx::OnShowCustomizePane](#onshowcustomizepane)|Called by the framework when a Quick Customize pane is activated.|
-|[CMDIFrameWndEx::OnShowMDITabContextMenu](#onshowmditabcontextmenu)|Called by the framework when a context menu should be displayed on one of the tabs. (Valid for MDI Tabbed Groups only.)|
-|[CMDIFrameWndEx::OnShowPanes](#onshowpanes)|Called by the framework to show or hide panes.|
-|[CMDIFrameWndEx::OnShowPopupMenu](#onshowpopupmenu)|Called by the framework when a pop-up menu is activated.|
-|[CMDIFrameWndEx::OnSizeMDIClient](#onsizemdiclient)|Called by the framework when the size of the client MDI window is changing.|
-|[CMDIFrameWndEx::OnTearOffMenu](#ontearoffmenu)|Called by the framework when a menu that has a tear-off bar is activated.|
-|[CMDIFrameWndEx::OnUpdateFrameMenu](#onupdateframemenu)|Called by the framework to update the frame menu. (Overrides `CMDIFrameWnd::OnUpdateFrameMenu`.)|
-|[CMDIFrameWndEx::PaneFromPoint](#panefrompoint)|Returns the docking pane that contains the specified point.|
-|`CMDIFrameWndEx::PreTranslateMessage`|Used by class [CWinApp](../../mfc/reference/cwinapp-class.md) to translate window messages before they are dispatched to the [TranslateMessage](/windows/win32/api/winuser/nf-winuser-translatemessage) and [DispatchMessage](/windows/win32/api/winuser/nf-winuser-dispatchmessage) Windows functions. (Overrides `CMDIFrameWnd::PreTranslateMessage`.)|
-|[CMDIFrameWndEx::RecalcLayout](#recalclayout)|Called by the framework to recalculate the layout of the frame window. (Overrides [CFrameWnd::RecalcLayout](../../mfc/reference/cframewnd-class.md#recalclayout).)|
-|[CMDIFrameWndEx::RemovePaneFromDockManager](#removepanefromdockmanager)|Unregisters a pane and removes it from the docking manager.|
-|[CMDIFrameWndEx::SaveMDIState](#savemdistate)|Saves the current layout of MDI Tabbed Groups and the list of previously opened documents.|
-|[CMDIFrameWndEx::SetPrintPreviewFrame](#setprintpreviewframe)|Sets the print preview frame window.|
-|[CMDIFrameWndEx::SetupToolbarMenu](#setuptoolbarmenu)|Modifies a toolbar object by searching for dummy items and replacing them with the specified user-defined items.|
-|[CMDIFrameWndEx::ShowFullScreen](#showfullscreen)|Switches the main frame from regular mode to full-screen mode.|
-|[CMDIFrameWndEx::ShowPane](#showpane)|Shows or hides the specified pane.|
-|[CMDIFrameWndEx::ShowWindowsDialog](#showwindowsdialog)|Creates a [CMFCWindowsManagerDialog](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) box and opens it.|
-|[CMDIFrameWndEx::TabbedDocumentToControlBar](#tabbeddocumenttocontrolbar)|Converts the specified tabbed document to a docking pane.|
-|[CMDIFrameWndEx::UpdateCaption](#updatecaption)|Called by the framework to update the window frame caption.|
-|[CMDIFrameWndEx::UpdateMDITabbedBarsIcons](#updatemditabbedbarsicons)|Sets the icon for each MDI tabbed pane.|
-|[CMDIFrameWndEx::WinHelp](#winhelp)|Called by the framework to initiate the WinHelp application or context help. (Overrides [CWnd::WinHelp](../../mfc/reference/cwnd-class.md#winhelp).)|
+|[`CMDIFrameWndEx::DockPane`](#dockpane)|Docks the specified pane to the frame window.|
+|[`CMDIFrameWndEx::DockPaneLeftOf`](#dockpaneleftof)|Docks one pane to the left of another pane.|
+|[`CMDIFrameWndEx::EnableAutoHidePanes`](#enableautohidepanes)|Enables auto-hide mode for panes when they're docked at specified sides of the main frame window.|
+|[`CMDIFrameWndEx::EnableDocking`](#enabledocking)|Enables docking of the panes that belong to the MDI frame window.|
+|[`CMDIFrameWndEx::EnableFullScreenMainMenu`](#enablefullscreenmainmenu)|Shows or hides the main menu in full-screen mode.|
+|[`CMDIFrameWndEx::EnableFullScreenMode`](#enablefullscreenmode)|Enables full-screen mode for the frame window.|
+|[`CMDIFrameWndEx::EnableLoadDockState`](#enableloaddockstate)|Enables or disables the loading of the docking state.|
+|[`CMDIFrameWndEx::EnableMDITabbedGroups`](#enablemditabbedgroups)|Enables or disables the MDI Tabbed Groups feature.|
+|[`CMDIFrameWndEx::EnableMDITabs`](#enablemditabs)|Enables or disables the MDI Tabs feature. When enabled, the frame window displays a tab for each MDI child window.|
+|[`CMDIFrameWndEx::EnableMDITabsLastActiveActivation`](#enablemditabslastactiveactivation)|Specifies whether the last active tab should be activated when the user closes the current tab.|
+|[`CMDIFrameWndEx::EnablePaneMenu`](#enablepanemenu)|Enables or disables automatic creation and management of the pop-up pane menu, which displays a list of application panes.|
+|[`CMDIFrameWndEx::EnableWindowsDialog`](#enablewindowsdialog)|Inserts a menu item whose command ID calls a [`CMFCWindowsManagerDialog`](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) dialog box.|
+|[`CMDIFrameWndEx::GetActivePopup`](#getactivepopup)|Returns a pointer to the currently displayed popup menu.|
+|[`CMDIFrameWndEx::GetPane`](#getpane)|Returns a pointer to the pane that has the specified control ID.|
+|[`CMDIFrameWndEx::GetDefaultResId`](#getdefaultresid)|Returns the ID of shared resources of the MDI frame window.|
+|[`CMDIFrameWndEx::GetMDITabGroups`](#getmditabgroups)|Returns a list of MDI tabbed windows.|
+|[`CMDIFrameWndEx::GetMDITabs`](#getmditabs)|Returns a reference to the underlined tabbed window.|
+|[`CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems`](#getmditabscontextmenualloweditems)|Returns a combination of flags that determines what context menu items are valid when the MDI Tabbed Groups feature is enabled.|
+|[`CMDIFrameWndEx::GetMenuBar`](#getmenubar)|Returns a pointer to a menu bar object attached to the frame window.|
+|[`CMDIFrameWndEx::GetRibbonBar`](#getribbonbar)|Retrieves the ribbon bar control for the frame.|
+|[`CMDIFrameWndEx::GetTearOffBars`](#gettearoffbars)|Returns a list of [`CPane`](../../mfc/reference/cpane-class.md)-derived objects that are in a tear-off state.|
+|`CMDIFrameWndEx::GetThisClass`|Called by the framework to obtain a pointer to the [`CRuntimeClass`](../../mfc/reference/cruntimeclass-structure.md) object that is associated with this class type.|
+|[`CMDIFrameWndEx::GetToolbarButtonToolTipText`](#gettoolbarbuttontooltiptext)|Called by the framework when the application displays the tooltip for a toolbar button.|
+|[`CMDIFrameWndEx::InsertPane`](#insertpane)|Registers the specified pane with the docking manager.|
+|[`CMDIFrameWndEx::IsFullScreen`](#isfullscreen)|Determines whether the frame window is in full-screen mode.|
+|[`CMDIFrameWndEx::IsMDITabbedGroup`](#ismditabbedgroup)|Determines whether the MDI Tabbed Groups feature is enabled.|
+|[`CMDIFrameWndEx::IsMemberOfMDITabGroup`](#ismemberofmditabgroup)|Determines whether the specified tabbed window is in the list of windows that are in MDI Tabbed Groups.|
+|[`CMDIFrameWndEx::IsMenuBarAvailable`](#ismenubaravailable)|Determines whether the frame window has a menu bar.|
+|[`CMDIFrameWndEx::IsPointNearDockSite`](#ispointneardocksite)|Determines whether a specified point is near the dock site.|
+|[`CMDIFrameWndEx::IsPrintPreview`](#isprintpreview)|Determines whether the frame window is in print-preview mode.|
+|[`CMDIFrameWndEx::LoadFrame`](#loadframe)|Creates a frame window from resource information. (Overrides `CMDIFrameWnd::LoadFrame`.)|
+|[`CMDIFrameWndEx::LoadMDIState`](#loadmdistate)|Loads the specified layout of MDI Tabbed Groups and the list of previously opened documents.|
+|[`CMDIFrameWndEx::MDITabMoveToNextGroup`](#mditabmovetonextgroup)|Moves the active tab from the currently active tabbed window to the next or previous tabbed group.|
+|[`CMDIFrameWndEx::MDITabNewGroup`](#mditabnewgroup)|Creates a new tabbed group that has a single window.|
+|[`CMDIFrameWndEx::NegotiateBorderSpace`](#negotiateborderspace)|Negotiates border space in a frame window during OLE in-place activation.|
+|[`CMDIFrameWndEx::OnCloseDockingPane`](#onclosedockingpane)|Called by the framework when the user clicks the **Close** button on a dockable pane.|
+|[`CMDIFrameWndEx::OnCloseMiniFrame`](#oncloseminiframe)|Called by the framework when the user clicks the **Close** button on a floating mini frame window.|
+|[`CMDIFrameWndEx::OnClosePopupMenu`](#onclosepopupmenu)|Called by the framework when an active pop-up menu processes a `WM_DESTROY` message.|
+|[`CMDIFrameWndEx::OnCmdMsg`](#oncmdmsg)|Called by the framework to route and dispatch command messages and to update command user-interface objects.|
+|[`CMDIFrameWndEx::OnDrawMenuImage`](#ondrawmenuimage)|Called by the framework when the image associated with a menu item is drawn.|
+|[`CMDIFrameWndEx::OnDrawMenuLogo`](#ondrawmenulogo)|Called by the framework when a [`CMFCPopupMenu`](../../mfc/reference/cmfcpopupmenu-class.md)processes a `WM_PAINT` message.|
+|[`CMDIFrameWndEx::OnEraseMDIClientBackground`](#onerasemdiclientbackground)|Called by the framework when the MDI frame window processes a `WM_ERASEBKGND` message.|
+|[`CMDIFrameWndEx::OnMenuButtonToolHitTest`](#onmenubuttontoolhittest)|Called by the framework when a [`CMFCToolBarButton`](../../mfc/reference/cmfctoolbarbutton-class.md)object processes a `WM_NCHITTEST` message.|
+|[`CMDIFrameWndEx::OnMoveMiniFrame`](#onmoveminiframe)|Called by the framework to move a mini-frame window.|
+|[`CMDIFrameWndEx::OnSetPreviewMode`](#onsetpreviewmode)|Sets the application's main frame window print-preview mode. (Overrides [`CFrameWnd::OnSetPreviewMode`](../../mfc/reference/cframewnd-class.md#onsetpreviewmode).)|
+|[`CMDIFrameWndEx::OnShowCustomizePane`](#onshowcustomizepane)|Called by the framework when a Quick Customize pane is activated.|
+|[`CMDIFrameWndEx::OnShowMDITabContextMenu`](#onshowmditabcontextmenu)|Called by the framework when a context menu should be displayed on one of the tabs. (Valid for MDI Tabbed Groups only.)|
+|[`CMDIFrameWndEx::OnShowPanes`](#onshowpanes)|Called by the framework to show or hide panes.|
+|[`CMDIFrameWndEx::OnShowPopupMenu`](#onshowpopupmenu)|Called by the framework when a pop-up menu is activated.|
+|[`CMDIFrameWndEx::OnSizeMDIClient`](#onsizemdiclient)|Called by the framework when the size of the client MDI window is changing.|
+|[`CMDIFrameWndEx::OnTearOffMenu`](#ontearoffmenu)|Called by the framework when a menu that has a tear-off bar is activated.|
+|[`CMDIFrameWndEx::OnUpdateFrameMenu`](#onupdateframemenu)|Called by the framework to update the frame menu. (Overrides `CMDIFrameWnd::OnUpdateFrameMenu`.)|
+|[`CMDIFrameWndEx::PaneFromPoint`](#panefrompoint)|Returns the docking pane that contains the specified point.|
+|`CMDIFrameWndEx::PreTranslateMessage`|Used by class [`CWinApp`](../../mfc/reference/cwinapp-class.md) to translate window messages before they're dispatched to the [`TranslateMessage`](/windows/win32/api/winuser/nf-winuser-translatemessage) and [`DispatchMessage`](/windows/win32/api/winuser/nf-winuser-dispatchmessage) Windows functions. (Overrides `CMDIFrameWnd::PreTranslateMessage`.)|
+|[`CMDIFrameWndEx::RecalcLayout`](#recalclayout)|Called by the framework to recalculate the layout of the frame window. (Overrides [`CFrameWnd::RecalcLayout`](../../mfc/reference/cframewnd-class.md#recalclayout).)|
+|[`CMDIFrameWndEx::RemovePaneFromDockManager`](#removepanefromdockmanager)|Unregisters a pane and removes it from the docking manager.|
+|[`CMDIFrameWndEx::SaveMDIState`](#savemdistate)|Saves the current layout of MDI Tabbed Groups and the list of previously opened documents.|
+|[`CMDIFrameWndEx::SetPrintPreviewFrame`](#setprintpreviewframe)|Sets the print preview frame window.|
+|[`CMDIFrameWndEx::SetupToolbarMenu`](#setuptoolbarmenu)|Modifies a toolbar object by searching for dummy items and replacing them with the specified user-defined items.|
+|[`CMDIFrameWndEx::ShowFullScreen`](#showfullscreen)|Switches the main frame from regular mode to full-screen mode.|
+|[`CMDIFrameWndEx::ShowPane`](#showpane)|Shows or hides the specified pane.|
+|[`CMDIFrameWndEx::ShowWindowsDialog`](#showwindowsdialog)|Creates a [`CMFCWindowsManagerDialog`](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) box and opens it.|
+|[`CMDIFrameWndEx::TabbedDocumentToControlBar`](#tabbeddocumenttocontrolbar)|Converts the specified tabbed document to a docking pane.|
+|[`CMDIFrameWndEx::UpdateCaption`](#updatecaption)|Called by the framework to update the window frame caption.|
+|[`CMDIFrameWndEx::UpdateMDITabbedBarsIcons`](#updatemditabbedbarsicons)|Sets the icon for each MDI tabbed pane.|
+|[`CMDIFrameWndEx::WinHelp`](#winhelp)|Called by the framework to initiate the WinHelp application or context help. (Overrides [`CWnd::WinHelp`](../../mfc/reference/cwnd-class.md#winhelp).)|
### Data Members
|Name|Description|
|----------|-----------------|
-|[CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild](#m_bcancovertcontrolbartomdichild)|Determines whether docking panes can be converted to MDI child windows.|
-|[CMDIFrameWndEx::m_bDisableSetRedraw](#m_bdisablesetredraw)|Enables or disables redraw optimization for MDI child windows.|
+|[`CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild`](#m_bcancovertcontrolbartomdichild)|Determines whether docking panes can be converted to MDI child windows.|
+|[`CMDIFrameWndEx::m_bDisableSetRedraw`](#m_bdisablesetredraw)|Enables or disables redraw optimization for MDI child windows.|
## Remarks
@@ -119,23 +118,23 @@ The following example derives a class from `CMDIFrameWndEx`. This code snippet c
## Inheritance Hierarchy
-[CObject](../../mfc/reference/cobject-class.md)
+[`CObject`](../../mfc/reference/cobject-class.md)
-[CCmdTarget](../../mfc/reference/ccmdtarget-class.md)
+[`CCmdTarget`](../../mfc/reference/ccmdtarget-class.md)
-[CWnd](../../mfc/reference/cwnd-class.md)
+[`CWnd`](../../mfc/reference/cwnd-class.md)
-[CFrameWnd](../../mfc/reference/cframewnd-class.md)
+[`CFrameWnd`](../../mfc/reference/cframewnd-class.md)
-[CMDIFrameWnd](../../mfc/reference/cmdiframewnd-class.md)
+[`CMDIFrameWnd`](../../mfc/reference/cmdiframewnd-class.md)
-[CMDIFrameWndEx](../../mfc/reference/cmdiframewndex-class.md)
+[`CMDIFrameWndEx`](../../mfc/reference/cmdiframewndex-class.md)
## Requirements
-**Header:** afxMDIFrameWndEx.h
+**Header:** `afxMDIFrameWndEx.h`
-## CMDIFrameWndEx::ActiveItemRecalcLayout
+## `CMDIFrameWndEx::ActiveItemRecalcLayout`
Recalculates the layout of the active item.
@@ -143,7 +142,7 @@ Recalculates the layout of the active item.
void ActiveItemRecalcLayout();
```
-## CMDIFrameWndEx::AddPane
+## `CMDIFrameWndEx::AddPane`
Registers a pane with the docking manager.
@@ -155,10 +154,10 @@ BOOL AddPane(
### Parameters
-*pControlBar*
+*`pControlBar`*\
[in] Pointer to the pane to register.
-*bTail*
+*`bTail`*\
[in] Specifies whether to add this pane to the end of the list.
### Return Value
@@ -167,9 +166,9 @@ Returns a non-zero value if the pane is registered successfully. Returns 0 if th
### Remarks
-Each pane must be registered with the [CDockingManager Class](../../mfc/reference/cdockingmanager-class.md) before it can take a part in the docking layout. Use this method to notify the docking manager that you want to dock a specific pane. Once that pane is registered, the docking manager aligns it based on its alignment setting and position in the list of panes maintained by the docking manager.
+Each pane must be registered with the [`CDockingManager` Class](../../mfc/reference/cdockingmanager-class.md) before it can take a part in the docking layout. Use this method to notify the docking manager that you want to dock a specific pane. Once that pane is registered, the docking manager aligns it based on its alignment setting and position in the list of panes maintained by the docking manager.
-## CMDIFrameWndEx::AdjustClientArea
+## `CMDIFrameWndEx::AdjustClientArea`
Reduces the client area to allow for a border.
@@ -177,7 +176,7 @@ Reduces the client area to allow for a border.
virtual void AdjustClientArea();
```
-## CMDIFrameWndEx::AdjustDockingLayout
+## `CMDIFrameWndEx::AdjustDockingLayout`
Recalculates the layout of all docked panes.
@@ -187,14 +186,14 @@ virtual void AdjustDockingLayout(HDWP hdwp=NULL);
### Parameters
-*hdwp*
+*`hdwp`*\
[in] Identifies the multiple-window-position structure. You can obtain this value by calling `BeginDeferWindowPos`.
### Remarks
Call this member function to recalculate the layout of all panes docked to the frame window.
-## CMDIFrameWndEx::AreMDITabs
+## `CMDIFrameWndEx::AreMDITabs`
Determines whether the MDI tabs feature or the MDI tabbed groups feature is enabled.
@@ -204,7 +203,7 @@ BOOL AreMDITabs(int* pnMDITabsType=NULL) const;
### Parameters
-*pnMDITabsType*
+*`pnMDITabsType`*\
[out] A pointer to an integer variable that indicates which features are enabled:
- 0: All features are disabled.
@@ -215,17 +214,17 @@ BOOL AreMDITabs(int* pnMDITabsType=NULL) const;
### Return Value
-Returns TRUE if MDI tabs or MDI tabbed groups is enabled.
+Returns `TRUE` if MDI tabs or MDI tabbed groups is enabled.
-Returns FALSE if none of the above features is enabled.
+Returns `FALSE` if none of the above features is enabled.
### Remarks
-Use this function to determine whether MDI tabs or MDI tabbed groups is enabled for the frame window. Use [CMDIFrameWndEx::EnableMDITabs](#enablemditabs) to enable or disable the MDI tabs feature.
+Use this function to determine whether MDI tabs or MDI tabbed groups is enabled for the frame window. Use [`CMDIFrameWndEx::EnableMDITabs`](#enablemditabs) to enable or disable the MDI tabs feature.
-Use [CMDIFrameWndEx::EnableMDITabbedGroups](#enablemditabbedgroups) to enable or disable the MDI tabbed groups feature.
+Use [`CMDIFrameWndEx::EnableMDITabbedGroups`](#enablemditabbedgroups) to enable or disable the MDI tabbed groups feature.
-## CMDIFrameWndEx::CanCovertControlBarToMDIChild
+## `CMDIFrameWndEx::CanCovertControlBarToMDIChild`
Called by the framework to determine whether the frame window can convert docking panes to tabbed documents
@@ -235,13 +234,13 @@ virtual BOOL CanCovertControlBarToMDIChild();
### Return Value
-Returns TRUE if the frame window can convert docking panes to tabbed documents; otherwise returns FALSE.
+Returns `TRUE` if the frame window can convert docking panes to tabbed documents; otherwise returns `FALSE`.
### Remarks
-Override this method in a derived class and return TRUE to enable the conversion of docking panes to tabbed documents. Alternatively, you can set [CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild](#m_bcancovertcontrolbartomdichild) to TRUE.
+Override this method in a derived class and return `TRUE` to enable the conversion of docking panes to tabbed documents. Alternatively, you can set [`CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild`](#m_bcancovertcontrolbartomdichild) to `TRUE`.
-## CMDIFrameWndEx::ControlBarToTabbedDocument
+## `CMDIFrameWndEx::ControlBarToTabbedDocument`
Converts the specified docking pane to a tabbed document.
@@ -251,7 +250,7 @@ virtual CMDIChildWndEx* ControlBarToTabbedDocument(CDockablePane* pBar);
### Parameters
-*pBar*
+*`pBar`*\
A pointer to the docking pane to convert.
### Return Value
@@ -260,9 +259,9 @@ Returns a pointer to the new MDI child window that contains the docking pane.
### Remarks
-This method converts a docking pane to a tabbed document. When you call this method, the framework creates a [CMDIChildWndEx Class](../../mfc/reference/cmdichildwndex-class.md) object, removes the docking pane from the docking manager, and adds the docking pane to the new MDI child window. The MDI child window resizes the docking pane to cover the entire client area
+This method converts a docking pane to a tabbed document. When you call this method, the framework creates a [`CMDIChildWndEx` Class](../../mfc/reference/cmdichildwndex-class.md) object, removes the docking pane from the docking manager, and adds the docking pane to the new MDI child window. The MDI child window resizes the docking pane to cover the entire client area
-## CMDIFrameWndEx::CreateDocumentWindow
+## `CMDIFrameWndEx::CreateDocumentWindow`
Creates a child document window.
@@ -274,10 +273,10 @@ virtual CMDIChildWndEx* CreateDocumentWindow(
### Parameters
-*lpcszDocName*
-[in] A text string that contains a document identifier. Typically, it is the full path of a document file.
+*`lpcszDocName`*\
+[in] A text string that contains a document identifier. Typically, it's the full path of a document file.
-*pObj*
+*`pObj`*\
[in] A pointer to a user-defined object. For example, a developer can create an application-specific data structure describing the document and telling how the document should be initialized at startup.
### Return Value
@@ -288,17 +287,17 @@ A pointer to `CMDIChildWndEx`.
The framework calls this method when it loads the list of documents previously saved in the registry.
-Override this method in order to create documents when they are being loaded from the registry.
+Override this method in order to create documents when they're being loaded from the registry.
### Example
The following example shows how `CreateDocumentWindow` is used in the [VisualStudioDemo Sample: MFC Visual Studio Application](../../overview/visual-cpp-samples.md).
-In this example, `g_strStartViewName` could be the name of a "virtual document" (for example, "Start Page") that is not actually loaded from a disk file. Therefore we need special processing to handle that case.
+In this example, `g_strStartViewName` could be the name of a "virtual document" (for example, "Start Page") that isn't actually loaded from a disk file. Therefore we need special processing to handle that case.
[!code-cpp[NVC_MFC_VisualStudioDemo#13](../../mfc/codesnippet/cpp/cmdiframewndex-class_2.cpp)]
-## CMDIFrameWndEx::CreateNewWindow
+## `CMDIFrameWndEx::CreateNewWindow`
Called by the framework to create a new window.
@@ -310,17 +309,17 @@ virtual CMDIChildWndEx* CreateNewWindow(
### Parameters
-*lpcszDocName*
+*`lpcszDocName`*\
[in] The document name.
-*pObj*
+*`pObj`*\
[in] Reserved for future use.
### Return Value
A pointer to the new window.
-## CMDIFrameWndEx::DockPane
+## `CMDIFrameWndEx::DockPane`
Docks the specified pane to the frame window.
@@ -333,18 +332,18 @@ void DockPane(
### Parameters
-*pBar*
+*`pBar`*\
[in] Pointer to the pane to dock.
-*nDockBarID*
+*`nDockBarID`*\
[in] Specifies which sides of the frame window to dock to.
-*lpRect*
+*`lpRect`*\
[in] Not used.
### Remarks
-This method docks the specified the pane to one of the sides of the frame window that was specified when [CBasePane::EnableDocking](../../mfc/reference/cbasepane-class.md#enabledocking) and [CMDIFrameWndEx::EnableDocking](#enabledocking) were called.
+This method docks the specified the pane to one of the sides of the frame window that was specified when [`CBasePane::EnableDocking`](../../mfc/reference/cbasepane-class.md#enabledocking) and [`CMDIFrameWndEx::EnableDocking`](#enabledocking) were called.
### Example
@@ -352,7 +351,7 @@ The following example demonstrates the use of the `DockPane` method. This code s
[!code-cpp[NVC_MFC_VisualStudioDemo#4](../../mfc/codesnippet/cpp/cmdiframewndex-class_3.cpp)]
-## CMDIFrameWndEx::DockPaneLeftOf
+## `CMDIFrameWndEx::DockPaneLeftOf`
Docks one pane to the left of another pane.
@@ -364,19 +363,19 @@ BOOL DockPaneLeftOf(
### Parameters
-*pBar*
+*`pBar`*\
[in] A pointer to the docking pane.
-*pLeftOf*
-[in] A pointer to the pane that serves as the dock site. .
+*`pLeftOf`*\
+[in] A pointer to the pane that serves as the dock site.
### Return Value
-Returns TRUE if the operation is successful. Otherwise returns FALSE.
+Returns `TRUE` if the operation is successful. Otherwise returns `FALSE`.
### Remarks
-Call this method to dock several pane objects in a predefined order. This method docks the pane specified by *pBar* to the left of the pane specified by *pLeftOf*.
+Call this method to dock several pane objects in a predefined order. This method docks the pane specified by *`pBar`* to the left of the pane specified by *`pLeftOf`*.
### Example
@@ -384,9 +383,9 @@ The following example shows how the `DockPaneLeftOf` method is used in the [Visu
[!code-cpp[NVC_MFC_VisualStudioDemo#5](../../mfc/codesnippet/cpp/cmdiframewndex-class_4.cpp)]
-## CMDIFrameWndEx::EnableAutoHidePanes
+## `CMDIFrameWndEx::EnableAutoHidePanes`
-Enables auto-hide mode for panes when they are docked at the specified sides of the main frame window.
+Enables auto-hide mode for panes when they're docked at the specified sides of the main frame window.
```
BOOL EnableAutoHidePanes(DWORD dwDockStyle);
@@ -394,20 +393,20 @@ BOOL EnableAutoHidePanes(DWORD dwDockStyle);
### Parameters
-*dwDockStyle*
+*`dwDockStyle`*\
[in] Specifies the sides of the main frame window that will be enabled. Use one or more of the following flags.
-- CBRS_ALIGN_LEFT
+- `CBRS_ALIGN_LEFT`
-- CBRS_ALIGN_RIGHT
+- `CBRS_ALIGN_RIGHT`
-- CBRS_ALIGN_TOP
+- `CBRS_ALIGN_TOP`
-- CBRS_ALIGN_BOTTOM
+- `CBRS_ALIGN_BOTTOM`
### Return Value
-Call this function to enable auto-hide mode for panes when they are docked at the specified sides of the main frame window.
+Call this function to enable auto-hide mode for panes when they're docked at the specified sides of the main frame window.
### Example
@@ -417,7 +416,7 @@ The following example shows how the `EnableAutoHidePanes` method is used in the
### Remarks
-## CMDIFrameWndEx::EnableDocking
+## `CMDIFrameWndEx::EnableDocking`
Enables docking of the panes that belong to the MDI frame window.
@@ -427,7 +426,7 @@ BOOL EnableDocking(DWORD dwDockStyle);
### Parameters
-*dwDockStyle*
+*`dwDockStyle`*\
[in] Specifies the docking style that you want to apply.
### Return Value
@@ -442,7 +441,7 @@ The following example shows how the `EnableDocking` method is used in the [Visua
[!code-cpp[NVC_MFC_VisualStudioDemo#7](../../mfc/codesnippet/cpp/cmdiframewndex-class_6.cpp)]
-## CMDIFrameWndEx::EnableFullScreenMainMenu
+## `CMDIFrameWndEx::EnableFullScreenMainMenu`
Shows or hides the main menu in full-screen mode.
@@ -452,12 +451,12 @@ void EnableFullScreenMainMenu(BOOL bEnableMenu);
### Parameters
-*bEnableMenu*
-[in] TRUE to show the main menu in full-screen mode, or FALSE to hide it.
+*`bEnableMenu`*\
+[in] `TRUE` to show the main menu in full-screen mode, or `FALSE` to hide it.
### Remarks
-## CMDIFrameWndEx::EnableFullScreenMode
+## `CMDIFrameWndEx::EnableFullScreenMode`
Enables full-screen mode for the frame window.
@@ -467,14 +466,14 @@ void EnableFullScreenMode(UINT uiFullScreenCmd);
### Parameters
-*uiFullScreenCmd*
+*`uiFullScreenCmd`*\
[in] The ID of a command that enables or disables full-screen mode.
### Remarks
-In full-screen mode, all docking control bars, toolbars and menus are hidden and the active view is resized to occupy the full-screen.When you enable full-screen mode, you must specify an ID of the command that enables or disables it. You can call `EnableFullScreenMode` from the main frame's `OnCreate` function. When a frame window is being switched to full-screen mode, the framework creates a floating toolbar with one button that has the specified command ID.If you want to keep the main menu on the screen, call [CMDIFrameWndEx::EnableFullScreenMainMenu](#enablefullscreenmainmenu).
+In full-screen mode, all docking control bars, toolbars and menus are hidden and the active view is resized to occupy the full-screen.When you enable full-screen mode, you must specify an ID of the command that enables or disables it. You can call `EnableFullScreenMode` from the main frame's `OnCreate` function. When a frame window is being switched to full-screen mode, the framework creates a floating toolbar with one button that has the specified command ID. If you want to keep the main menu on the screen, call [`CMDIFrameWndEx::EnableFullScreenMainMenu`](#enablefullscreenmainmenu).
-## CMDIFrameWndEx::EnableLoadDockState
+## `CMDIFrameWndEx::EnableLoadDockState`
Enables or disables the loading of the docking state.
@@ -484,12 +483,12 @@ void EnableLoadDockState(BOOL bEnable = TRUE);
### Parameters
-*bEnable*
-[in] TRUE to enable the loading of the docking state, FALSE to disable the loading of the docking state.
+*`bEnable`*\
+[in] `TRUE` to enable the loading of the docking state, `FALSE` to disable the loading of the docking state.
### Remarks
-## CMDIFrameWndEx::EnableMDITabbedGroups
+## `CMDIFrameWndEx::EnableMDITabbedGroups`
Enables or disables the MDI tabbed groups feature for the frame window.
@@ -501,10 +500,10 @@ void EnableMDITabbedGroups(
### Parameters
-*bEnable*
-[in] If TRUE, the MDI tabbed groups feature is enabled; if FALSE, the MDI tabbed groups feature is disabled.
+*`bEnable`*\
+[in] If `TRUE`, the MDI tabbed groups feature is enabled; if `FALSE`, the MDI tabbed groups feature is disabled.
-*params*
+*`params`*\
[in] Specifies parameters that the framework applies to child windows that are created in the MDI client area.
### Remarks
@@ -521,9 +520,9 @@ Use this method to enable or disable the MDI tabbed groups feature. This feature
- Your application can save the current layout of tabbed windows and the list of currently opened documents.
-If you call this method with *bEnable* set to FALSE, *params* is ignored.
+If you call this method with *`bEnable`* set to `FALSE`, *`params`* is ignored.
-Even if MDI tabbed groups is already enabled, you can call this method again to modify the settings for child windows. Call the method with *bEnable* set to TRUE and modify the members of the `CMDITabInfo` object that are specified by the *params* parameter.
+Even if MDI tabbed groups is already enabled, you can call this method again to modify the settings for child windows. Call the method with *`bEnable`* set to `TRUE` and modify the members of the `CMDITabInfo` object that are specified by the *`params`* parameter.
For more information about how to use MDI tabbed groups, see [MDI Tabbed Groups](../../mfc/mdi-tabbed-groups.md).
@@ -533,7 +532,7 @@ The following example shows how `EnableMDITabbedGroups` is used in the [VisualSt
[!code-cpp[NVC_MFC_VisualStudioDemo#8](../../mfc/codesnippet/cpp/cmdiframewndex-class_7.cpp)]
-## CMDIFrameWndEx::EnableMDITabs
+## `CMDIFrameWndEx::EnableMDITabs`
Enables or disables the MDI Tabs feature for the MDI frame window. When enabled, the frame window displays a tab for each MDI child window.
@@ -550,34 +549,34 @@ void EnableMDITabs(
### Parameters
-*bEnable*
+*`bEnable`*\
Specifies whether tabs are enabled.
-*bIcons*
+*`bIcons`*\
Specifies whether icons should be displayed on the tabs.
-*tabLocation*
+*`tabLocation`*\
Specifies the location of the tab labels.
-*bTabCloseButton*
+*`bTabCloseButton`*\
Specifies whether to display tab close buttons.
-*style*
-Specifies the style of tabs. Use STYLE_3D_SCROLLED for regular tabs or STYLE_3D_ONENOTE for Microsoft OneNote tabs.
+*`style`*\
+Specifies the style of tabs. Use `STYLE_3D_SCROLLED` for regular tabs or `STYLE_3D_ONENOTE` for Microsoft OneNote tabs.
-*bTabCustomTooltips*
+*`bTabCustomTooltips`*\
Specifies whether custom tooltips are enabled.
-*bActiveTabCloseButton*
-If TRUE, a **Close** button will be displayed on the active tab instead of on the right corner of the tab area.
+*`bActiveTabCloseButton`*\
+If `TRUE`, a **Close** button will be displayed on the active tab instead of on the right corner of the tab area.
### Remarks
Call this method to enable or disable the MDI tabs feature for the MDI frame window. When enabled, all child windows are displayed as tabs.
-The tab labels can be located at the top or bottom of the frame, depending on the setting of the parameter *tabLocation*. You may specify either `CMFCTabCtrl::LOCATION_BOTTOM` (the default setting) or `CMFCTabCtrl::LOCATION_TOP`.
+The tab labels can be located at the top or bottom of the frame, depending on the setting of the parameter *`tabLocation`*. You may specify either `CMFCTabCtrl::LOCATION_BOTTOM` (the default setting) or `CMFCTabCtrl::LOCATION_TOP`.
-If *bTabCustomTooltips* is TRUE, an AFX_WM_ON_GET_TAB_TOOLTIP message will be sent to the main frame window. Your code can handle this message and provide the framework with custom tooltips for MDI tabs.
+If *`bTabCustomTooltips`* is `TRUE`, an `AFX_WM_ON_GET_TAB_TOOLTIP` message will be sent to the main frame window. Your code can handle this message and provide the framework with custom tooltips for MDI tabs.
### Example
@@ -585,7 +584,7 @@ The following example shows how `EnableMDITabs` is used in the [MDITabsDemo Samp
[!code-cpp[NVC_MFC_MDITabsDemo#3](../../mfc/reference/codesnippet/cpp/cmdiframewndex-class_8.cpp)]
-## CMDIFrameWndEx::EnableMDITabsLastActiveActivation
+## `CMDIFrameWndEx::EnableMDITabsLastActiveActivation`
Specifies whether the last active tab should be opened when the user closes the current tab.
@@ -595,8 +594,8 @@ void EnableMDITabsLastActiveActivation(BOOL bLastActiveTab=TRUE);
### Parameters
-*bLastActiveTab*
-[in] If TRUE, enable activation of the last active tab. If FALSE, disable activation of the last active tab.
+*`bLastActiveTab`*\
+[in] If `TRUE`, enable activation of the last active tab. If `FALSE`, disable activation of the last active tab.
### Remarks
@@ -610,7 +609,7 @@ The default implementation uses the first way.
Use `EnableMDITabsLastActiveActivation` to enable the second way of tab activation. It emulates the way Windows opens MDI child windows.
-## CMDIFrameWndEx::EnablePaneMenu
+## `CMDIFrameWndEx::EnablePaneMenu`
Enables or disables automatic creation and management of the pop-up pane menu, which displays a list of application panes.
@@ -626,23 +625,23 @@ void EnablePaneMenu(
### Parameters
-*bEnable*
-[in] If TRUE, automatic handling of the pane menu is enabled; if FALSE, automatic handling is disabled.
+*`bEnable`*\
+[in] If `TRUE`, automatic handling of the pane menu is enabled; if `FALSE`, automatic handling is disabled.
-*uiCustomizeCmd*
+*`uiCustomizeCmd`*\
[in] Command ID of the **Customize** menu item. This menu item is usually added to the end of the list of panes.
-*strCustomizeLabel*
+*`strCustomizeLabel`*\
[in] The text to be displayed for the **Customize** menu item (for localization).
-*uiViewToolbarsMenuEntryID*
+*`uiViewToolbarsMenuEntryID`*\
[in] Specifies the ID of a toolbar menu item that opens the pane menu. Usually this is the **Toolbars** submenu of the **View** menu.
-*bContextMenuShowsToolbarsOnly*
-[in] If TRUE, the pane menu displays only a list of toolbars. If FALSE, the menu displays a list of toolbars and docking bars.
+*`bContextMenuShowsToolbarsOnly`*\
+[in] If `TRUE`, the pane menu displays only a list of toolbars. If `FALSE`, the menu displays a list of toolbars and docking bars.
-*bViewMenuShowsToolbarsOnly*
-[in] If TRUE, the pane menu displays only a list of toolbars. If FALSE, the menu displays a list of toolbars and docking bars.
+*`bViewMenuShowsToolbarsOnly`*\
+[in] If `TRUE`, the pane menu displays only a list of toolbars. If `FALSE`, the menu displays a list of toolbars and docking bars.
### Remarks
@@ -654,9 +653,9 @@ The following example shows how `EnablePaneMenu` is used in the [VisualStudioDem
[!code-cpp[NVC_MFC_VisualStudioDemo#9](../../mfc/codesnippet/cpp/cmdiframewndex-class_9.cpp)]
-## CMDIFrameWndEx::EnableWindowsDialog
+## `CMDIFrameWndEx::EnableWindowsDialog`
-Inserts a menu item whose command ID calls a [CMFCWindowsManagerDialog](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) dialog box.
+Inserts a menu item whose command ID calls a [`CMFCWindowsManagerDialog`](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) dialog box.
```cpp
void EnableWindowsDialog(
@@ -674,21 +673,21 @@ void EnableWindowsDialog(
### Parameters
-*uiMenuId*
+*`uiMenuId`*\
[in] Specifies the resource ID of a menu.
-*lpszMenuText*
+*`lpszMenuText`*\
[in] Specifies the item's text.
-*bShowHelpButton*
+*`bShowHelpButton`*\
[in] Specifies whether to display a **Help** button on the windows management dialog box.
-*uiMenuTextResId*
+*`uiMenuTextResId`*\
[in] The string resource identifier that contains the item's text string.
### Remarks
-Use this method to insert a menu item whose command calls a MDI child window management dialog box ( [CMFCWindowsManagerDialog Class](../../mfc/reference/cmfcwindowsmanagerdialog-class.md)). The new item is inserted into the menu specified by *uiMenuId*. Call `EnableWindowsDialog` when you process the WM_CREATE message.
+Use this method to insert a menu item whose command calls a MDI child window management dialog box ( [`CMFCWindowsManagerDialog` Class](../../mfc/reference/cmfcwindowsmanagerdialog-class.md)). The new item is inserted into the menu specified by *`uiMenuId`*. Call `EnableWindowsDialog` when you process the `WM_CREATE` message.
### Example
@@ -696,7 +695,7 @@ The following example shows how `EnableWindowsDialog` is used in the [VisualStud
[!code-cpp[NVC_MFC_VisualStudioDemo#10](../../mfc/codesnippet/cpp/cmdiframewndex-class_10.cpp)]
-## CMDIFrameWndEx::GetActivePopup
+## `CMDIFrameWndEx::GetActivePopup`
Returns a pointer to the currently displayed popup menu.
@@ -706,13 +705,13 @@ CMFCPopupMenu* GetActivePopup() const;
### Return Value
-A pointer to the active popup menu; NULL if no popup menu is active.
+A pointer to the active popup menu; `NULL` if no popup menu is active.
### Remarks
-Use this function to obtain a pointer to the [CMFCPopupMenu Class](../../mfc/reference/cmfcpopupmenu-class.md) object that is currently displayed.
+Use this function to obtain a pointer to the [`CMFCPopupMenu` Class](../../mfc/reference/cmfcpopupmenu-class.md) object that is currently displayed.
-## CMDIFrameWndEx::GetDefaultResId
+## `CMDIFrameWndEx::GetDefaultResId`
Returns the ID of shared resources of the MDI frame window.
@@ -726,9 +725,9 @@ A resource ID value. 0 if the frame window has no menu bar.
### Remarks
-This method returns the resource ID that was specified when the MDI frame window was loaded by [CFrameWnd::LoadFrame](../../mfc/reference/cframewnd-class.md#loadframe).
+This method returns the resource ID that was specified when the MDI frame window was loaded by [`CFrameWnd::LoadFrame`](../../mfc/reference/cframewnd-class.md#loadframe).
-## CMDIFrameWndEx::GetMDITabGroups
+## `CMDIFrameWndEx::GetMDITabGroups`
Returns a list of MDI tabbed windows.
@@ -738,13 +737,13 @@ const CObList& GetMDITabGroups() const;
### Return Value
-A reference to a [CObList Class](../../mfc/reference/coblist-class.md) object that contains a list of tabbed windows. Do not store or modify the list.
+A reference to a [`CObList` Class](../../mfc/reference/coblist-class.md) object that contains a list of tabbed windows. Don't store or modify the list.
### Remarks
Use this method to access the list of tabbed windows. It can be helpful if you want to change or query some parameters of individual tabbed windows.
-## CMDIFrameWndEx::GetMDITabs
+## `CMDIFrameWndEx::GetMDITabs`
Returns a reference to the underlined tabbed window.
@@ -756,7 +755,7 @@ CMFCTabCtrl& GetMDITabs();
A reference to the underlined tabbed window.
-## CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems
+## `CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems`
Returns a combination of flags that determines what operations are valid when the MDI Tabbed Groups feature is enabled.
@@ -766,29 +765,29 @@ DWORD GetMDITabsContextMenuAllowedItems();
### Return Value
-A bitwise-OR combination of the following flags:
+A bitwise "or" (`|`) combination of the following flags:
-- AFX_MDI_CREATE_VERT_GROUP - can create a vertical tab group.
+- `AFX_MDI_CREATE_VERT_GROUP` - can create a vertical tab group.
-- AFX_MDI_CREATE_HORZ_GROUP - can create a horizontal tab group.
+- `AFX_MDI_CREATE_HORZ_GROUP` - can create a horizontal tab group.
-- AFX_MDI_CAN_MOVE_PREV - can move a tab to the previous tab group.
+- `AFX_MDI_CAN_MOVE_PREV` - can move a tab to the previous tab group.
-- AFX_MDI_CAN_MOVE_NEXT - can move a tab to the next tab group.
+- `AFX_MDI_CAN_MOVE_NEXT` - can move a tab to the next tab group.
### Remarks
When the MDI Tabbed Groups feature is enabled, you must know what operations are allowed on the tabs of a particular window. This method analyzes the current layout of tabbed windows and returns a combination of flags that can be used to build, for example, a shortcut menu.
-You can create a new vertical tab group when all tabbed windows are aligned vertically, or when there is only one tabbed window.
+You can create a new vertical tab group when all tabbed windows are aligned vertically, or when there's only one tabbed window.
-You can create a new horizontal tab group when all tabbed windows are aligned horizontally, or when there is only one tabbed window.
+You can create a new horizontal tab group when all tabbed windows are aligned horizontally, or when there's only one tabbed window.
-You can move a tab to the previous group only if there is more than one tab in a tabbed window.
+You can move a tab to the previous group only if there's more than one tab in a tabbed window.
-You can move a tab to the next group only if there is more than one tab in a tabbed window.
+You can move a tab to the next group only if there's more than one tab in a tabbed window.
-## CMDIFrameWndEx::GetMenuBar
+## `CMDIFrameWndEx::GetMenuBar`
Returns a pointer to a menu bar object attached to the frame window.
@@ -800,7 +799,7 @@ const CMFCMenuBar* GetMenuBar() const;
A pointer to a menu bar object.
-## CMDIFrameWndEx::GetPane
+## `CMDIFrameWndEx::GetPane`
Returns a pointer to the pane that has the specified control ID.
@@ -810,14 +809,14 @@ CBasePane* GetPane(UINT nID);
### Parameters
-*nID*
+*`nID`*\
[in] The control ID.
### Return Value
-A pointer to the pane that has the specified control ID, if it exists. Otherwise, NULL.
+A pointer to the pane that has the specified control ID, if it exists. Otherwise, `NULL`.
-## CMDIFrameWndEx::GetRibbonBar
+## `CMDIFrameWndEx::GetRibbonBar`
Retrieves the ribbon bar control for the frame.
@@ -827,11 +826,11 @@ CMFCRibbonBar* GetRibbonBar();
### Return Value
-Pointer to the [CMFCRibbonBar Class](../../mfc/reference/cmfcribbonbar-class.md) for the frame.
+Pointer to the [`CMFCRibbonBar` Class](../../mfc/reference/cmfcribbonbar-class.md) for the frame.
### Remarks
-## CMDIFrameWndEx::GetTearOffBars
+## `CMDIFrameWndEx::GetTearOffBars`
Returns a list of tear-off menus.
@@ -841,13 +840,13 @@ const CObList& GetTearOffBars() const;
### Return Value
-A reference to a [CObList Class](../../mfc/reference/coblist-class.md) object that contains a collection of pointers to `CPane`-derived objects that are in a tear-off state.
+A reference to a [`CObList` Class](../../mfc/reference/coblist-class.md) object that contains a collection of pointers to `CPane`-derived objects that are in a tear-off state.
### Remarks
`CMDIFrameWndEx` maintains a collection of tear-off menus. Use this method to retrieve a reference to this list.
-## CMDIFrameWndEx::GetToolbarButtonToolTipText
+## `CMDIFrameWndEx::GetToolbarButtonToolTipText`
Called by the framework when the application displays the tooltip for a toolbar button.
@@ -859,19 +858,19 @@ virtual BOOL GetToolbarButtonToolTipText(
### Parameters
-*pButton*
+*`pButton`*\
[in] A pointer to a toolbar button.
-*strTTText*
+*`strTTText`*\
[in] The tooltip text to display for the button.
### Return Value
-TRUE if the tooltip has been displayed. FALSE otherwise.
+`TRUE` if the tooltip has been displayed. `FALSE` otherwise.
### Remarks
-## CMDIFrameWndEx::InsertPane
+## `CMDIFrameWndEx::InsertPane`
Registers the specified pane with the docking manager.
@@ -884,24 +883,24 @@ BOOL InsertPane(
### Parameters
-*pControlBar*
+*`pControlBar`*\
[in] A pointer to the pane to be inserted.
-*pTarget*
+*`pTarget`*\
[in] A pointer to the pane before or after which to insert the pane.
-*bAfter*
-[in] If TRUE, *pControlBar* is inserted after *pTarget*. If FALSE, *pControlBar* is inserted before *pTarget*.
+*`bAfter`*\
+[in] If `TRUE`, *`pControlBar`* is inserted after *`pTarget`*. If `FALSE`, *`pControlBar`* is inserted before *`pTarget`*.
### Return Value
-TRUE if the method successfully registers the pane, FALSE if the pane was already registered with the docking manager.
+`TRUE` if the method successfully registers the pane, `FALSE` if the pane was already registered with the docking manager.
### Remarks
-Use this method to tell the docking manager about a pane specified by *pControlBar*. The docking manager will align this pane according to the pane's alignment and position in the docking manager's internal list.
+Use this method to tell the docking manager about a pane specified by *`pControlBar`*. The docking manager will align this pane according to the pane's alignment and position in the docking manager's internal list.
-## CMDIFrameWndEx::IsFullScreen
+## `CMDIFrameWndEx::IsFullScreen`
Determines whether the frame window is in full-screen mode.
@@ -911,13 +910,13 @@ BOOL IsFullScreen() const;
### Return Value
-TRUE if the frame window is in full screen mode; otherwise FALSE.
+`TRUE` if the frame window is in full screen mode; otherwise `FALSE`.
### Remarks
-You can set the full screen mode by calling the [CMDIFrameWndEx::EnableFullScreenMode](#enablefullscreenmode) method.
+You can set the full screen mode by calling the [`CMDIFrameWndEx::EnableFullScreenMode`](#enablefullscreenmode) method.
-## CMDIFrameWndEx::IsMDITabbedGroup
+## `CMDIFrameWndEx::IsMDITabbedGroup`
Specifies whether the MDI Tabbed Groups feature is enabled.
@@ -927,13 +926,13 @@ BOOL IsMDITabbedGroup() const;
### Return Value
-TRUE if the MDI Tabbed Groups feature is enabled; otherwise FALSE.
+`TRUE` if the MDI Tabbed Groups feature is enabled; otherwise `FALSE`.
### Remarks
-To determine whether regular MDI tabs or the MDI Tabbed Groups feature is enabled, use [CMDIFrameWndEx::AreMDITabs](#aremditabs).
+To determine whether regular MDI tabs or the MDI Tabbed Groups feature is enabled, use [`CMDIFrameWndEx::AreMDITabs`](#aremditabs).
-## CMDIFrameWndEx::IsMemberOfMDITabGroup
+## `CMDIFrameWndEx::IsMemberOfMDITabGroup`
Determines whether the specified tabbed window is in the list of windows that are in MDI Tabbed Groups.
@@ -943,14 +942,14 @@ BOOL IsMemberOfMDITabGroup(CWnd* pWnd);
### Parameters
-*pWnd*
+*`pWnd`*\
[in] A pointer to tabbed window.
### Return Value
-TRUE if the specified tabbed window is in the list of tabbed windows that form MDI Tabbed Groups. Otherwise FALSE.
+`TRUE` if the specified tabbed window is in the list of tabbed windows that form MDI Tabbed Groups. Otherwise `FALSE`.
-## CMDIFrameWndEx::IsMenuBarAvailable
+## `CMDIFrameWndEx::IsMenuBarAvailable`
Determines whether the frame window has a menu bar.
@@ -960,9 +959,9 @@ BOOL IsMenuBarAvailable() const;
### Return Value
-TRUE if the pointer to the menu bar object is not NULL; otherwise FALSE.
+`TRUE` if the pointer to the menu bar object isn't `NULL`; otherwise `FALSE`.
-## CMDIFrameWndEx::IsPointNearDockSite
+## `CMDIFrameWndEx::IsPointNearDockSite`
Determines whether a specified point is near the dock site.
@@ -975,24 +974,24 @@ BOOL IsPointNearDockSite(
### Parameters
-*point*
+*`point`*\
[in] The specified point in screen coordinates.
-*dwBarAlignment*
-[in] Specifies which edge the point is near. Possible values are CBRS_ALIGN_LEFT, CBRS_ALIGN_RIGHT, CBRS_ALIGN_TOP, and CBRS_ALIGN_BOTTOM
+*`dwBarAlignment`*\
+[in] Specifies which edge the point is near. Possible values are `CBRS_ALIGN_LEFT`, `CBRS_ALIGN_RIGHT`, `CBRS_ALIGN_TOP`, and `CBRS_ALIGN_BOTTOM`
-*bOuterEdge*
-[in] TRUE if the point is near the outer border of the dock site; FALSE otherwise.
+*`bOuterEdge`*\
+[in] `TRUE` if the point is near the outer border of the dock site; `FALSE` otherwise.
### Return Value
-TRUE if the point is near the dock site; otherwise FALSE.
+`TRUE` if the point is near the dock site; otherwise `FALSE`.
### Remarks
The point is near the dock site when it is within the sensitivity set in the docking manager. The default sensitivity is 15 pixels.
-## CMDIFrameWndEx::IsPrintPreview
+## `CMDIFrameWndEx::IsPrintPreview`
Determines whether the frame window is in print-preview mode.
@@ -1002,11 +1001,11 @@ BOOL IsPrintPreview();
### Return Value
-TRUE if the frame window is in print-preview mode; otherwise, FALSE.
+`TRUE` if the frame window is in print-preview mode; otherwise, `FALSE`.
### Remarks
-## CMDIFrameWndEx::LoadFrame
+## `CMDIFrameWndEx::LoadFrame`
Creates a frame window from resource information.
@@ -1020,23 +1019,23 @@ virtual BOOL LoadFrame(
### Parameters
-*nIDResource*
+*`nIDResource`*\
[in] The ID of a shared resource associated with the frame window.
-*dwDefaultStyle*
+*`dwDefaultStyle`*\
[in] The style of the frame window.
-*pParentWnd*
+*`pParentWnd`*\
[in] A pointer to the frame's parent.
-*pContext*
-[in] A pointer to a [CCreateContext Structure](../../mfc/reference/ccreatecontext-structure.md). This parameter can be NULL.
+*`pContext`*\
+[in] A pointer to a [`CCreateContext` Structure](../../mfc/reference/ccreatecontext-structure.md). This parameter can be `NULL`.
### Return Value
-TRUE if the method succeeds, otherwise FALSE.
+`TRUE` if the method succeeds, otherwise `FALSE`.
-## CMDIFrameWndEx::LoadMDIState
+## `CMDIFrameWndEx::LoadMDIState`
Loads the specified layout of MDI Tabbed Groups and the list of previously opened documents.
@@ -1046,24 +1045,24 @@ virtual BOOL LoadMDIState(LPCTSTR lpszProfileName);
### Parameters
-*lpszProfileName*
+*`lpszProfileName`*\
[in] Specifies the profile name.
### Return Value
-TRUE if the load succeeded; FALSE if the load failed or there is no data to load.
+`TRUE` if the load succeeded; `FALSE` if the load failed or there's no data to load.
### Remarks
To load or save the state of MDI tabs and groups and the list of opened documents, do the following:
-- Call [CMDIFrameWndEx::SaveMDIState](#savemdistate) when the main frame is being closed
+- Call [`CMDIFrameWndEx::SaveMDIState`](#savemdistate) when the main frame is being closed
-- Call [CMDIFrameWndEx::LoadMDIState](#loadmdistate) when the main frame is being created. The recommended place for this call is before the main frame is displayed for the first time. Add `CWinAppEx::EnableLoadWindowPlacement` `(FALSE);` before `pMainFrame->LoadFrame (IDR_MAINFRAME);.` Add `CWinAppEx::ReloadWindowPlacement` `(pMainFrame);` after the call to `LoadMDIState` to display the main frame at the position that was stored in the registry.
+- Call [`CMDIFrameWndEx::LoadMDIState`](#loadmdistate) when the main frame is being created. The recommended place for this call is before the main frame is displayed for the first time. Add `CWinAppEx::EnableLoadWindowPlacement` `(FALSE);` before `pMainFrame->LoadFrame (IDR_MAINFRAME);.` Add `CWinAppEx::ReloadWindowPlacement` `(pMainFrame);` after the call to `LoadMDIState` to display the main frame at the position that was stored in the registry.
-- Override `GetDocumentName` in the `CMDIChildWndEx`- derived class if your application displays documents that are not stored as files. The returned string will be saved in the registry as the document identifier. The base implementation of [CMDIChildWndEx::GetDocumentName](../../mfc/reference/cmdichildwndex-class.md#getdocumentname) returns a value obtained from [CDocument::GetPathName](../../mfc/reference/cdocument-class.md#getpathname).
+- Override `GetDocumentName` in the `CMDIChildWndEx`- derived class if your application displays documents that aren't stored as files. The returned string will be saved in the registry as the document identifier. The base implementation of [`CMDIChildWndEx::GetDocumentName`](../../mfc/reference/cmdichildwndex-class.md#getdocumentname) returns a value obtained from [`CDocument::GetPathName`](../../mfc/reference/cdocument-class.md#getpathname).
-- Override [CMDIFrameWndEx::CreateDocumentWindow](#createdocumentwindow) to correctly create documents when they are being loaded from the registry. The first parameter is the string that `GetDocumentName` returned.
+- Override [`CMDIFrameWndEx::CreateDocumentWindow`](#createdocumentwindow) to correctly create documents when they're being loaded from the registry. The first parameter is the string that `GetDocumentName` returned.
### Example
@@ -1071,7 +1070,7 @@ The following example shows how `LoadMDIState` is used in the [VisualStudioDemo
[!code-cpp[NVC_MFC_VisualStudioDemo#11](../../mfc/codesnippet/cpp/cmdiframewndex-class_11.cpp)]
-## CMDIFrameWndEx::MDITabMoveToNextGroup
+## `CMDIFrameWndEx::MDITabMoveToNextGroup`
Moves the active tab from the currently active tabbed window to the next or previous tabbed group.
@@ -1081,10 +1080,10 @@ void MDITabMoveToNextGroup(BOOL bNext=TRUE);
### Parameters
-*bNext*
-[in] If TRUE, move the tab to the next tabbed group. If FALSE, move it to the previous tabbed group.
+*`bNext`*\
+[in] If `TRUE`, move the tab to the next tabbed group. If `FALSE`, move it to the previous tabbed group.
-## CMDIFrameWndEx::MDITabNewGroup
+## `CMDIFrameWndEx::MDITabNewGroup`
Creates a new tabbed group that has a single window.
@@ -1094,8 +1093,8 @@ void MDITabNewGroup(BOOL bVert=TRUE);
### Parameters
-*bVert*
-[in] Specifies the new group alignment. If TRUE, the new group is aligned vertically. If FALSE, the new group is aligned horizontally.
+*`bVert`*\
+[in] Specifies the new group alignment. If `TRUE`, the new group is aligned vertically. If `FALSE`, the new group is aligned horizontally.
### Remarks
@@ -1107,7 +1106,7 @@ The following example shows how `MDITabNewGroup` is used in the [VisualStudioDem
[!code-cpp[NVC_MFC_VisualStudioDemo#12](../../mfc/codesnippet/cpp/cmdiframewndex-class_12.cpp)]
-## CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild
+## `CMDIFrameWndEx::m_bCanCovertControlBarToMDIChild`
Specifies whether docking panes can be converted to MDI child windows.
@@ -1117,7 +1116,7 @@ BOOL m_bCanCovertControlBarToMDIChild;
### Remarks
-Indicates whether docking control bars can be converted to MDI child windows. If this flag is TRUE, the framework handles the conversion automatically when the user selects the **Tabbed Document** command. The flag is protected and you must explicitly enable this option either by setting `m_bCanCovertControlBarToMDIChild` in a constructor of a `CMDIFrameWndEx`-derived class, or by overriding `CanConvertControlBarToMDIChild`.
+Indicates whether docking control bars can be converted to MDI child windows. If this flag is `TRUE`, the framework handles the conversion automatically when the user selects the **Tabbed Document** command. The flag is protected and you must explicitly enable this option either by setting `m_bCanCovertControlBarToMDIChild` in a constructor of a `CMDIFrameWndEx`-derived class, or by overriding `CanConvertControlBarToMDIChild`.
The default value is `FALSE`.
@@ -1127,7 +1126,7 @@ The following example shows how `m_bCanCovertControlBarToMDIChild` is used in th
[!code-cpp[NVC_MFC_VisualStudioDemo#13](../../mfc/codesnippet/cpp/cmdiframewndex-class_2.cpp)]
-## CMDIFrameWndEx::m_bDisableSetRedraw
+## `CMDIFrameWndEx::m_bDisableSetRedraw`
Enables or disables redraw optimization for MDI child windows.
@@ -1137,13 +1136,13 @@ AFX_IMPORT_DATA static BOOL m_bDisableSetRedraw;
### Remarks
-The default value is TRUE.
+The default value is `TRUE`.
-Set this flag to FALSE if you want to optimize redrawing of MDI children. In this case the framework will call `SetRedraw (FALSE)` for the main frame when the application is changing the active tab.
+Set this flag to `FALSE` if you want to optimize redrawing of MDI children. In this case the framework will call `SetRedraw (FALSE)` for the main frame when the application is changing the active tab.
This flag can cause unwanted effects (such as background applications that become visible). Therefore we recommend that you change the default only if you experience noticeable flickering during MDI tab activation.
-## CMDIFrameWndEx::NegotiateBorderSpace
+## `CMDIFrameWndEx::NegotiateBorderSpace`
Negotiates border space in a frame window during OLE in-place activation.
@@ -1155,7 +1154,7 @@ virtual BOOL NegotiateBorderSpace(
### Parameters
-*nBorderCmd*
+*`nBorderCmd`*\
[in] Contains one of the following values from the enum `CFrameWnd::BorderCmd`:
- `borderGet` = 1
@@ -1164,8 +1163,8 @@ virtual BOOL NegotiateBorderSpace(
- `borderSet` = 3
-*lpRectBorder*
-[in, out] Pointer to a [RECT Structure](/windows/win32/api/windef/ns-windef-rect) or a [CRect Class](../../atl-mfc-shared/reference/crect-class.md) object that specifies the coordinates of the border.
+*`lpRectBorder`*\
+[in, out] Pointer to a [`RECT` Structure](/windows/win32/api/windef/ns-windef-rect) or a [`CRect` Class](../../atl-mfc-shared/reference/crect-class.md) object that specifies the coordinates of the border.
### Return Value
@@ -1175,7 +1174,7 @@ Nonzero if the method was successful; otherwise 0.
This method is an implementation of OLE border space negotiation.
-## CMDIFrameWndEx::OnCloseDockingPane
+## `CMDIFrameWndEx::OnCloseDockingPane`
Called by the framework when the user clicks the **Close** button on a dockable pane.
@@ -1185,20 +1184,20 @@ virtual BOOL OnCloseDockingPane(CDockablePane* pWnd);
### Parameters
-*pWnd*
+*`pWnd`*\
[in] Pointer to the pane being closed.
### Return Value
-TRUE if the docking pane can be closed. Otherwise, FALSE.
+`TRUE` if the docking pane can be closed. Otherwise, `FALSE`.
### Remarks
-Override this method to handle hiding of docking panes. Return FALSE if you want to prevent a docking pane from being hidden.
+Override this method to handle hiding of docking panes. Return `FALSE` if you want to prevent a docking pane from being hidden.
-The default implementation does nothing and returns TRUE.
+The default implementation does nothing and returns `TRUE`.
-## CMDIFrameWndEx::OnCloseMiniFrame
+## `CMDIFrameWndEx::OnCloseMiniFrame`
Called by the framework when the user clicks the **Close** button on a floating mini-frame window.
@@ -1208,22 +1207,22 @@ virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);
### Parameters
-*pWnd*
+*`pWnd`*\
[in] Pointer to the mini-frame window being closed.
### Return Value
-TRUE if the floating mini-frame window can be closed. Otherwise, FALSE.
+`TRUE` if the floating mini-frame window can be closed. Otherwise, `FALSE`.
### Remarks
-Override this method to handle hiding of floating mini-frame windows. Return FALSE if you want to prevent a floating mini-frame window from being hidden.
+Override this method to handle hiding of floating mini-frame windows. Return `FALSE` if you want to prevent a floating mini-frame window from being hidden.
-The default implementation does nothing and returns TRUE.
+The default implementation does nothing and returns `TRUE`.
-## CMDIFrameWndEx::OnClosePopupMenu
+## `CMDIFrameWndEx::OnClosePopupMenu`
-Called by the framework when an active pop-up menu processes a WM_DESTROY message.
+Called by the framework when an active pop-up menu processes a `WM_DESTROY` message.
```
virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);
@@ -1231,14 +1230,14 @@ virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);
### Parameters
-*pMenuPopup*
+*`pMenuPopup`*\
[in] Pointer to a pop-up menu.
### Remarks
-Override this method if you want to process notifications from [CMFCPopupMenu Class](../../mfc/reference/cmfcpopupmenu-class.md) objects that belong to the MDI frame window when those objects process WM_DESTROY messages.
+Override this method if you want to process notifications from [`CMFCPopupMenu` Class](../../mfc/reference/cmfcpopupmenu-class.md) objects that belong to the MDI frame window when those objects process `WM_DESTROY` messages.
-## CMDIFrameWndEx::OnCmdMsg
+## `CMDIFrameWndEx::OnCmdMsg`
Called by the framework to route and dispatch command messages and to update command user-interface objects.
@@ -1252,23 +1251,23 @@ virtual BOOL OnCmdMsg(
### Parameters
-*nID*
+*`nID`*\
[in] The command ID.
-*nCode*
-[in] Identifies the command notification code. See [CCmdTarget::OnCmdMsg](../../mfc/reference/ccmdtarget-class.md#oncmdmsg) for more information about values for *nCode*.
+*`nCode`*\
+[in] Identifies the command notification code. See [`CCmdTarget::OnCmdMsg`](../../mfc/reference/ccmdtarget-class.md#oncmdmsg) for more information about values for *`nCode`*.
-*pExtra*
-[in] Used according to the value of *nCode*. See [CCmdTarget::OnCmdMsg](../../mfc/reference/ccmdtarget-class.md#oncmdmsg) for more information about *pExtra*.
+*`pExtra`*\
+[in] Used according to the value of *`nCode`*. See [`CCmdTarget::OnCmdMsg`](../../mfc/reference/ccmdtarget-class.md#oncmdmsg) for more information about *`pExtra`*.
-*pHandlerInfo*
-[in, out] Typically, this parameter should be NULL.If not NULL, `OnCmdMsg` fills in the `pTarget` and `pmf` members of the *pHandlerInfo* structure instead of dispatching the command.
+*`pHandlerInfo`*\
+[in, out] Typically, this parameter should be `NULL`.If not `NULL`, `OnCmdMsg` fills in the `pTarget` and `pmf` members of the *`pHandlerInfo`* structure instead of dispatching the command.
### Return Value
Nonzero if the message is handled; otherwise 0.
-## CMDIFrameWndEx::OnDrawMenuImage
+## `CMDIFrameWndEx::OnDrawMenuImage`
Called by the framework when the image associated with a menu item is drawn.
@@ -1281,26 +1280,26 @@ virtual BOOL OnDrawMenuImage(
### Parameters
-*pDC*
+*`pDC`*\
[in] Pointer to a device context.
-*pMenuButton*
+*`pMenuButton`*\
[in] Pointer to the menu button.
-*rectImage*
+*`rectImage`*\
[in] Bounding rectangle of the image.
### Return Value
-TRUE if the method draws the image. The default implementation returns FALSE.
+`TRUE` if the method draws the image. The default implementation returns `FALSE`.
### Remarks
Override this method if you want to customize image rendering for the menu items that belong to the menu bar owned by the `CMDIFrameWndEx`-derived object. The default implementation does nothing.
-## CMDIFrameWndEx::OnDrawMenuLogo
+## `CMDIFrameWndEx::OnDrawMenuLogo`
-Called by the framework when a [CMFCPopupMenu](../../mfc/reference/cmfcpopupmenu-class.md)processes a WM_PAINT message.
+Called by the framework when a [`CMFCPopupMenu`](../../mfc/reference/cmfcpopupmenu-class.md)processes a `WM_PAINT` message.
```
virtual void OnDrawMenuLogo(
@@ -1313,9 +1312,9 @@ virtual void OnDrawMenuLogo(
Override this function to display a logo on the pop-up menu that belongs to the menu bar owned by the `CMDIFrameWndEx`-derived object. The default implementation does nothing.
-## CMDIFrameWndEx::OnEraseMDIClientBackground
+## `CMDIFrameWndEx::OnEraseMDIClientBackground`
-Called by the framework when the MDI frame window processes a WM_ERASEBKGND message.
+Called by the framework when the MDI frame window processes a `WM_ERASEBKGND` message.
```
virtual BOOL OnEraseMDIClientBackground(CDC*);
@@ -1323,15 +1322,15 @@ virtual BOOL OnEraseMDIClientBackground(CDC*);
### Return Value
-TRUE if the application processes the message and erases the background.
+`TRUE` if the application processes the message and erases the background.
### Remarks
-Override this member function if you want to process the WM_ERASEBKGND message in a `CMDIFrameWndEx`-derived class.
+Override this member function if you want to process the `WM_ERASEBKGND` message in a `CMDIFrameWndEx`-derived class.
-## CMDIFrameWndEx::OnMenuButtonToolHitTest
+## `CMDIFrameWndEx::OnMenuButtonToolHitTest`
-Called by the framework when a [CMFCToolBarButton](../../mfc/reference/cmfctoolbarbutton-class.md)object processes a WM_NCHITTEST message.
+Called by the framework when a [`CMFCToolBarButton`](../../mfc/reference/cmfctoolbarbutton-class.md)object processes a `WM_NCHITTEST` message.
```
virtual BOOL OnMenuButtonToolHitTest(
@@ -1341,21 +1340,21 @@ virtual BOOL OnMenuButtonToolHitTest(
### Parameters
-*pButton*
+*`pButton`*\
[in] The toolbar button.
-*pTI*
-[out] Pointer to a [TOOLINFO](/windows/win32/api/commctrl/ns-commctrl-tttoolinfoa) structure.
+*`pTI`*\
+[out] Pointer to a [`TOOLINFO`](/windows/win32/api/commctrl/ns-commctrl-tttoolinfoa) structure.
### Return Value
-TRUE if the application fills the *pTI* parameter. The default implementation returns FALSE.
+`TRUE` if the application fills the *`pTI`* parameter. The default implementation returns `FALSE`.
### Remarks
Override this method if you want to provide information about specific menu items to a tooltip. The default implementation does nothing.
-## CMDIFrameWndEx::OnMoveMiniFrame
+## `CMDIFrameWndEx::OnMoveMiniFrame`
Called by the framework to move a mini-frame window.
@@ -1365,14 +1364,14 @@ virtual BOOL OnMoveMiniFrame(CWnd* pFrame);
### Parameters
-*pFrame*
+*`pFrame`*\
[in] A pointer to a mini-frame window.
### Return Value
-TRUE if the method succeeds, otherwise FALSE.
+`TRUE` if the method succeeds, otherwise `FALSE`.
-## CMDIFrameWndEx::OnSetPreviewMode
+## `CMDIFrameWndEx::OnSetPreviewMode`
Sets the application's main frame window print-preview mode.
@@ -1384,17 +1383,17 @@ virtual void OnSetPreviewMode(
### Parameters
-*bPreview*
-[in] If TRUE, sets print-preview mode. If FALSE, cancels preview mode.
+*`bPreview`*\
+[in] If `TRUE`, sets print-preview mode. If `FALSE`, cancels preview mode.
-*pState*
+*`pState`*\
[in] A pointer to a `CPrintPreviewState` structure.
### Remarks
-This method overrides [CFrameWnd::OnSetPreviewMode](../../mfc/reference/cframewnd-class.md#onsetpreviewmode).
+This method overrides [`CFrameWnd::OnSetPreviewMode`](../../mfc/reference/cframewnd-class.md#onsetpreviewmode).
-## CMDIFrameWndEx::OnShowCustomizePane
+## `CMDIFrameWndEx::OnShowCustomizePane`
Called by the framework when a Quick Customize pane is activated.
@@ -1406,15 +1405,15 @@ virtual BOOL OnShowCustomizePane(
### Parameters
-*pMenuPane*
+*`pMenuPane`*\
[in] A pointer to the Quick Customize pane.
-*uiToolbarID*
+*`uiToolbarID`*\
[in] Control ID of the toolbar to customize.
### Return Value
-This method always returns TRUE.
+This method always returns `TRUE`.
### Remarks
@@ -1422,7 +1421,7 @@ The Quick Customize pane is a menu that opens when the user clicks **Customize**
Override this method in a derived class to make changes in the Quick Customize pane.
-## CMDIFrameWndEx::OnShowMDITabContextMenu
+## `CMDIFrameWndEx::OnShowMDITabContextMenu`
Called by the framework before a shortcut menu is displayed on one of the tabs. Valid for MDI Tabbed Groups only.
@@ -1435,32 +1434,32 @@ virtual BOOL OnShowMDITabContextMenu(
### Parameters
-*point*
+*`point`*\
[in] The location of the menu in screen coordinates.
-*dwAllowedItems*
-[in] A bitwise-OR combination of flags that indicates what actions are allowed for the current tab:
+*`dwAllowedItems`*\
+[in] A bitwise "or" (`|`) combination of flags that indicates what actions are allowed for the current tab:
-- AFX_MDI_CREATE_VERT_GROUP - can create a vertical tab group.
+- `AFX_MDI_CREATE_VERT_GROUP` - can create a vertical tab group.
-- AFX_MDI_CREATE_HORZ_GROUP - can create a horizontal tab group.
+- `AFX_MDI_CREATE_HORZ_GROUP` - can create a horizontal tab group.
-- AFX_MDI_CAN_MOVE_PREV - can move a tab to the previous tab group.
+- `AFX_MDI_CAN_MOVE_PREV` - can move a tab to the previous tab group.
-- AFX_MDI_CAN_MOVE_NEXT - can move a tab to the next tab group.
+- `AFX_MDI_CAN_MOVE_NEXT` - can move a tab to the next tab group.
-- AFX_MDI_CAN_BE_DOCKED - switch a tabbed document to docked state (relevant for tabbed documents only).
+- `AFX_MDI_CAN_BE_DOCKED` - switch a tabbed document to docked state (relevant for tabbed documents only).
-*bTabDrop*
-[in] TRUE to display the menu as a result of dragging the tab onto another tabbed group. FALSE to display the menu as a shortcut menu on the currently active tab.
+*`bTabDrop`*\
+[in] `TRUE` to display the menu as a result of dragging the tab onto another tabbed group. `FALSE` to display the menu as a shortcut menu on the currently active tab.
### Return Value
-Override this method in a [CMDIFrameWndEx](../../mfc/reference/cmdiframewndex-class.md)-derived class.
+Override this method in a [`CMDIFrameWndEx`](../../mfc/reference/cmdiframewndex-class.md)-derived class.
### Remarks
-If you do not process `OnShowMDITabContextMenu`, the shortcut menu will not be displayed. This function is generated by the **MFC Application Wizard** when you enable the MDI Tabbed Groups feature.
+If you don't process `OnShowMDITabContextMenu`, the shortcut menu won't be displayed. This function is generated by the **MFC Application Wizard** when you enable the MDI Tabbed Groups feature.
### Example
@@ -1468,7 +1467,7 @@ The following example shows how `OnShowMDITabContextMenu` is used in the [Visual
[!code-cpp[NVC_MFC_VisualStudioDemo#14](../../mfc/codesnippet/cpp/cmdiframewndex-class_13.cpp)]
-## CMDIFrameWndEx::OnShowPanes
+## `CMDIFrameWndEx::OnShowPanes`
Called by the framework to show or hide panes.
@@ -1478,20 +1477,20 @@ virtual BOOL OnShowPanes(BOOL bShow);
### Parameters
-*bShow*
-[in] TRUE to show panes, FALSE to hide panes.
+*`bShow`*\
+[in] `TRUE` to show panes, `FALSE` to hide panes.
### Return Value
-TRUE if the state of the panes changes as a result of calling this method, FALSE if the panes are already in the state specified by *bShow*. For example, if the panes are hidden and *bShow* is FALSE, the return value is FALSE.
+`TRUE` if the state of the panes changes as a result of calling this method, `FALSE` if the panes are already in the state specified by *`bShow`*. For example, if the panes are hidden and *`bShow`* is `FALSE`, the return value is `FALSE`.
### Remarks
The default implementation removes the toolbar from the top-level frame window.
-If [CDockingManager::m_bHideDockingBarsInContainerMode](../../mfc/reference/cdockingmanager-class.md#m_bhidedockingbarsincontainermode) is TRUE (the default), all docking panes will be hidden.
+If [`CDockingManager::m_bHideDockingBarsInContainerMode`](../../mfc/reference/cdockingmanager-class.md#m_bhidedockingbarsincontainermode) is `TRUE` (the default), all docking panes will be hidden.
-## CMDIFrameWndEx::OnShowPopupMenu
+## `CMDIFrameWndEx::OnShowPopupMenu`
Called by the framework when it opens a pop-up menu.
@@ -1501,7 +1500,7 @@ virtual BOOL OnShowPopupMenu(CMFCPopupMenu*);
### Return Value
-TRUE if the pop-up menu is to be displayed. Otherwise, FALSE. The default implementation returns TRUE.
+`TRUE` if the pop-up menu is to be displayed. Otherwise, `FALSE`. The default implementation returns `TRUE`.
### Remarks
@@ -1509,7 +1508,7 @@ Override this method if you want to implement special processing upon pop-up men
The default implementation does nothing.
-## CMDIFrameWndEx::OnSizeMDIClient
+## `CMDIFrameWndEx::OnSizeMDIClient`
Called by the framework when the size of the client MDI window is changing.
@@ -1521,15 +1520,15 @@ virtual void OnSizeMDIClient(
### Parameters
-*rectOld*
+*`rectOld`*\
[in] The current size of the MDI client window.
-*rectNew*
+*`rectNew`*\
[in] The new size of the MDI client window.
### Remarks
-## CMDIFrameWndEx::OnTearOffMenu
+## `CMDIFrameWndEx::OnTearOffMenu`
Called by the framework when a menu that has a tear-off bar is activated.
@@ -1541,21 +1540,21 @@ virtual BOOL OnTearOffMenu(
### Parameters
-*pMenuPopup*
+*`pMenuPopup`*\
[in] A pointer to the pop-up menu.
-*pBar*
+*`pBar`*\
[in] A pointer to the tear-off bar.
### Return Value
-TRUE to allow the pop-up menu with the tear-off bar to be made activate; otherwise FALSE. The default is TRUE.
+`TRUE` to allow the pop-up menu with the tear-off bar to be made activate; otherwise `FALSE`. The default is `TRUE`.
### Remarks
Override this function when you want to implement a special setup for the tear-off bar. The default implementation does nothing.
-## CMDIFrameWndEx::OnUpdateFrameMenu
+## `CMDIFrameWndEx::OnUpdateFrameMenu`
Called by the framework to update the frame menu.
@@ -1565,10 +1564,10 @@ virtual void OnUpdateFrameMenu(HMENU hMenuAlt);
### Parameters
-*hMenuAlt*
+*`hMenuAlt`*\
[in] A handle to a menu.
-## CMDIFrameWndEx::PaneFromPoint
+## `CMDIFrameWndEx::PaneFromPoint`
Returns the docking pane that contains the specified point.
@@ -1588,30 +1587,30 @@ CBasePane* PaneFromPoint(
### Parameters
-*point*
+*`point`*\
[in] The point (in screen coordinates).
-*nSensitivity*
+*`nSensitivity`*\
[in] The window rectangle of each checked pane is enlarged in all directions by this value.
-*bExactBar*
-[in] If TRUE, the *nSensitivity* parameter is ignored.
+*`bExactBar`*\
+[in] If `TRUE`, the *`nSensitivity`* parameter is ignored.
-*pRTCBarType*
-[in] If non- NULL, the method iterates over only the panes of the specified type.
+*`pRTCBarType`*\
+[in] If non- `NULL`, the method iterates over only the panes of the specified type.
-*dwAlignment*
+*`dwAlignment`*\
[out] If a pane is found, this parameter will specify which side of the pane is closest to the specified point.
### Return Value
-A pointer to a docking pane, or NULL if no control contains the point specified by *point*.
+A pointer to a docking pane, or `NULL` if no control contains the point specified by *`point`*.
### Remarks
-The call is redirected to the [CDockingManager Class](../../mfc/reference/cdockingmanager-class.md). See [CDockingManager::ControlBarFromPoint](../../mfc/reference/cdockingmanager-class.md#panefrompoint) for more information.
+The call is redirected to the [`CDockingManager` Class](../../mfc/reference/cdockingmanager-class.md). See [`CDockingManager::ControlBarFromPoint`](../../mfc/reference/cdockingmanager-class.md#panefrompoint) for more information.
-## CMDIFrameWndEx::RecalcLayout
+## `CMDIFrameWndEx::RecalcLayout`
Called by the framework to recalculate the layout of the frame window.
@@ -1621,14 +1620,14 @@ virtual void RecalcLayout(BOOL bNotify = TRUE);
### Parameters
-*bNotify*
-[in] Determines whether the active in-place item for the frame window receives notification of the layout change. If TRUE, the item is notified; otherwise FALSE.
+*`bNotify`*\
+[in] Determines whether the active in-place item for the frame window receives notification of the layout change. If `TRUE`, the item is notified; otherwise `FALSE`.
### Remarks
This method overrides [CFrameWnd::RecalcLayout](../../mfc/reference/cframewnd-class.md#recalclayout).
-## CMDIFrameWndEx::RemovePaneFromDockManager
+## `CMDIFrameWndEx::RemovePaneFromDockManager`
Unregisters a pane and removes it from the docking manager.
@@ -1643,28 +1642,28 @@ void RemovePaneFromDockManager(
### Parameters
-*pControlBar*
+*`pControlBar`*\
[in] A pointer to a pane to be removed.
-*bDestroy*
-[in] TRUE to destroy the removed pane. FALSE to not destroy it.
+*`bDestroy`*\
+[in] `TRUE` to destroy the removed pane. `FALSE` to not destroy it.
-*bAdjustLayout*
-[in] TRUE to adjust the docking layout immediately. If FALSE, the adjustment will occur only when a redraw event occurs for other reasons (the user resizes the window, drags the main frame, etc.).
+*`bAdjustLayout`*\
+[in] `TRUE` to adjust the docking layout immediately. If `FALSE`, the adjustment will occur only when a redraw event occurs for other reasons (the user resizes the window, drags the main frame, etc.).
-*bAutoHide*
-[in] TRUE to remove the pane from the list of autohide panes. FALSE to remove the pane from the list of regular panes.
+*`bAutoHide`*\
+[in] `TRUE` to remove the pane from the list of autohide panes. `FALSE` to remove the pane from the list of regular panes.
-*pBarReplacement*
+*`pBarReplacement`*\
[in] A pointer to a pane that replaces the removed pane.
### Remarks
-You must register each pane with the docking manager to take part in the docking layout. Use [CMDIFrameWndEx::AddPane](#addpane) or [CMDIFrameWndEx::InsertPane](#insertpane) to register panes.
+You must register each pane with the docking manager to take part in the docking layout. Use [`CMDIFrameWndEx::AddPane`](#addpane) or [`CMDIFrameWndEx::InsertPane`](#insertpane) to register panes.
Use this method when a pane is no longer a part of the docking layout of the frame window.
-## CMDIFrameWndEx::SaveMDIState
+## `CMDIFrameWndEx::SaveMDIState`
Saves the current layout of MDI Tabbed Groups and the list of previously opened documents.
@@ -1674,12 +1673,12 @@ virtual BOOL SaveMDIState(LPCTSTR lpszProfileName);
### Parameters
-*lpszProfileName*
+*`lpszProfileName`*\
[in] Specifies the profile name.
### Return Value
-TRUE if the save succeeded; FALSE if the save failed.
+`TRUE` if the save succeeded; `FALSE` if the save failed.
### Remarks
@@ -1687,15 +1686,15 @@ To load or save the state of MDI tabs and groups and the list of opened document
- Call `SaveMDIState` when the main frame is being closed
-- Call [CMDIFrameWndEx::LoadMDIState](#loadmdistate) when the main frame is being created. The recommended location for this call is before the main frame is displayed for the first time.
+- Call [`CMDIFrameWndEx::LoadMDIState`](#loadmdistate) when the main frame is being created. The recommended location for this call is before the main frame is displayed for the first time.
- Call `CWinAppEx::EnableLoadWindowPlacement(FALSE);` before `pMainFrame->LoadFrame (IDR_MAINFRAME);`
- Call `CWinAppEx::ReloadWindowPlacement(pMainFrame)` after `LoadMDIState` to display the main frame at the position that was stored in the registry.
-- Override `GetDocumentName` in the `CMDIChildWndEx`- derived class if your application displays documents that are not stored as files. The returned string will be saved in the registry as a document identifier. For more information, see [CMDIChildWndEx::GetDocumentName](../../mfc/reference/cmdichildwndex-class.md#getdocumentname).
+- Override `GetDocumentName` in the `CMDIChildWndEx`- derived class if your application displays documents that aren't stored as files. The returned string will be saved in the registry as a document identifier. For more information, see [`CMDIChildWndEx::GetDocumentName`](../../mfc/reference/cmdichildwndex-class.md#getdocumentname).
-- Override [CMDIFrameWndEx::CreateDocumentWindow](#createdocumentwindow) to correctly create documents when they are loaded from the registry. The parameter to `CreateDocumentWindow` is the string that `GetDocumentName` returned earlier.
+- Override [`CMDIFrameWndEx::CreateDocumentWindow`](#createdocumentwindow) to correctly create documents when they're loaded from the registry. The parameter to `CreateDocumentWindow` is the string that `GetDocumentName` returned earlier.
### Example
@@ -1703,7 +1702,7 @@ The following example shows how `SaveMDIState` is used in the [VisualStudioDemo
[!code-cpp[NVC_MFC_VisualStudioDemo#15](../../mfc/codesnippet/cpp/cmdiframewndex-class_14.cpp)]
-## CMDIFrameWndEx::SetPrintPreviewFrame
+## `CMDIFrameWndEx::SetPrintPreviewFrame`
Sets the print preview frame window.
@@ -1713,12 +1712,12 @@ void SetPrintPreviewFrame(CFrameWnd* pWnd);
### Parameters
-*pWnd*
+*`pWnd`*\
[in] Pointer to a print preview frame window.
### Remarks
-## CMDIFrameWndEx::SetupToolbarMenu
+## `CMDIFrameWndEx::SetupToolbarMenu`
Modifies a toolbar object by replacing dummy items with user-defined items.
@@ -1731,16 +1730,16 @@ void SetupToolbarMenu(
### Parameters
-*menu*
-[in] A reference to a [CMenu Class](../../mfc/reference/cmenu-class.md) object to be modified.
+*`menu`*\
+[in] A reference to a [`CMenu` Class](../../mfc/reference/cmenu-class.md) object to be modified.
-*uiViewUserToolbarCmdFirst*
+*`uiViewUserToolbarCmdFirst`*\
[in] Specifies the first user-defined command.
-*uiViewUserToolbarCmdLast*
+*`uiViewUserToolbarCmdLast`*\
[in] Specifies the last user-defined command.
-## CMDIFrameWndEx::ShowFullScreen
+## `CMDIFrameWndEx::ShowFullScreen`
Switches the main frame from regular mode to full-screen mode.
@@ -1750,7 +1749,7 @@ void ShowFullScreen();
### Remarks
-## CMDIFrameWndEx::ShowPane
+## `CMDIFrameWndEx::ShowPane`
Shows or hides the specified pane.
@@ -1764,21 +1763,21 @@ void ShowPane(
### Parameters
-*pBar*
+*`pBar`*\
[in] Pointer to the pane to be shown or hidden.
-*bShow*
-[in] TRUE to show the pane. FALSE to hide the pane.
+*`bShow`*\
+[in] `TRUE` to show the pane. `FALSE` to hide the pane.
-*bDelay*
-[in] TRUE to delay the recalculation of the docking layout. FALSE to recalculate the docking layout immediately.
+*`bDelay`*\
+[in] `TRUE` to delay the recalculation of the docking layout. `FALSE` to recalculate the docking layout immediately.
-*bActivate*
-[in] TRUE to show the pane should as active. FALSE to show the pane as inactive.
+*`bActivate`*\
+[in] `TRUE` to show the pane should as active. `FALSE` to show the pane as inactive.
### Remarks
-Call this method to show or hide the pane. Do not use `ShowWindow` for docking panes.
+Call this method to show or hide the pane. Don't use `ShowWindow` for docking panes.
### Example
@@ -1786,9 +1785,9 @@ The following example shows how `ShowPane` is used in the [VisualStudioDemo Samp
[!code-cpp[NVC_MFC_VisualStudioDemo#16](../../mfc/codesnippet/cpp/cmdiframewndex-class_15.cpp)]
-## CMDIFrameWndEx::ShowWindowsDialog
+## `CMDIFrameWndEx::ShowWindowsDialog`
-Creates a [CMFCWindowsManagerDialog](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) box and opens it.
+Creates a [`CMFCWindowsManagerDialog`](../../mfc/reference/cmfcwindowsmanagerdialog-class.md) box and opens it.
```cpp
void ShowWindowsDialog();
@@ -1800,7 +1799,7 @@ The following example shows how `ShowWindowsDialog` is used in the [VisualStudio
[!code-cpp[NVC_MFC_VisualStudioDemo#18](../../mfc/codesnippet/cpp/cmdiframewndex-class_16.cpp)]
-## CMDIFrameWndEx::TabbedDocumentToControlBar
+## `CMDIFrameWndEx::TabbedDocumentToControlBar`
Converts the specified tabbed document to a docking pane.
@@ -1810,16 +1809,16 @@ virtual BOOL TabbedDocumentToControlBar(CMDIChildWndEx* pMDIChildWnd);
### Parameters
-*pMDIChildWnd*
+*`pMDIChildWnd`*\
A pointer to MDI child window that contains a docking pane.
### Return Value
-TRUE if the method was successful, FALSE on failure.
+`TRUE` if the method was successful, `FALSE` on failure.
### Remarks
-Use this method to convert a tabbed document to a docking pane. The tabbed document must have been created by using [CMDIFrameWndEx::ControlBarToTabbedDocument](#controlbartotabbeddocument).
+Use this method to convert a tabbed document to a docking pane. The tabbed document must have been created by using [`CMDIFrameWndEx::ControlBarToTabbedDocument`](#controlbartotabbeddocument).
### Example
@@ -1827,7 +1826,7 @@ The following example shows how `TabbedDocumentToControlBar` is used in the [Vis
[!code-cpp[NVC_MFC_VisualStudioDemo#19](../../mfc/codesnippet/cpp/cmdiframewndex-class_17.cpp)]
-## CMDIFrameWndEx::UpdateCaption
+## `CMDIFrameWndEx::UpdateCaption`
Called by the framework to update the window frame caption.
@@ -1837,7 +1836,7 @@ void UpdateCaption();
### Remarks
-## CMDIFrameWndEx::UpdateMDITabbedBarsIcons
+## `CMDIFrameWndEx::UpdateMDITabbedBarsIcons`
Sets the icon for each MDI tabbed pane.
@@ -1845,7 +1844,7 @@ Sets the icon for each MDI tabbed pane.
void UpdateMDITabbedBarsIcons();
```
-## CMDIFrameWndEx::WinHelp
+## `CMDIFrameWndEx::WinHelp`
Called by the framework to initiate the WinHelp application or context help.
@@ -1857,19 +1856,19 @@ virtual void WinHelp(
### Parameters
-*dwData*
-[in] Specifies data as required for the type of help specified by *nCmd*.
+*`dwData`*\
+[in] Specifies data as required for the type of help specified by *`nCmd`*.
-*nCmd*
-[in] Specifies the type of help requested. For a list of possible values and how they affect the *dwData* parameter, see the [WinHelp Function](/windows/win32/api/winuser/nf-winuser-winhelpw) in the Windows SDK.
+*`nCmd`*\
+[in] Specifies the type of help requested. For a list of possible values and how they affect the *`dwData`* parameter, see the [WinHelp Function](/windows/win32/api/winuser/nf-winuser-winhelpw) in the Windows SDK.
### Remarks
-This method overrides [CWnd::WinHelp](../../mfc/reference/cwnd-class.md#winhelp).
+This method overrides [`CWnd::WinHelp`](../../mfc/reference/cwnd-class.md#winhelp).
## See also
-[Hierarchy Chart](../../mfc/hierarchy-chart.md)
-[Classes](../../mfc/reference/mfc-classes.md)
-[CMDIFrameWnd](../../mfc/reference/cframewnd-class.md)
-[CMDIChildWndEx Class](../../mfc/reference/cmdichildwndex-class.md)
+[Hierarchy Chart](../../mfc/hierarchy-chart.md)\
+[Classes](../../mfc/reference/mfc-classes.md)\
+[`CMDIFrameWnd`](../../mfc/reference/cframewnd-class.md)\
+[`CMDIChildWndEx` Class](../../mfc/reference/cmdichildwndex-class.md)
diff --git a/docs/mfc/reference/cmfctabctrl-class.md b/docs/mfc/reference/cmfctabctrl-class.md
index a76ea976a3f..1a75a0bb84f 100644
--- a/docs/mfc/reference/cmfctabctrl-class.md
+++ b/docs/mfc/reference/cmfctabctrl-class.md
@@ -4,9 +4,8 @@ title: "CMFCTabCtrl Class"
ms.date: "08/28/2019"
f1_keywords: ["CMFCTabCtrl", "AFXTABCTRL/CMFCTabCtrl", "AFXTABCTRL/CMFCTabCtrl::ActivateMDITab", "AFXTABCTRL/CMFCTabCtrl::AllowDestroyEmptyTabbedPane", "AFXTABCTRL/CMFCTabCtrl::AutoSizeWindow", "AFXTABCTRL/CMFCTabCtrl::CalcRectEdit", "AFXTABCTRL/CMFCTabCtrl::Create", "AFXTABCTRL/CMFCTabCtrl::EnableActiveTabCloseButton", "AFXTABCTRL/CMFCTabCtrl::EnableInPlaceEdit", "AFXTABCTRL/CMFCTabCtrl::EnableTabDocumentsMenu", "AFXTABCTRL/CMFCTabCtrl::EnsureVisible", "AFXTABCTRL/CMFCTabCtrl::GetDocumentIcon", "AFXTABCTRL/CMFCTabCtrl::GetFirstVisibleTabNum", "AFXTABCTRL/CMFCTabCtrl::GetResizeMode", "AFXTABCTRL/CMFCTabCtrl::GetScrollBar", "AFXTABCTRL/CMFCTabCtrl::GetTabArea", "AFXTABCTRL/CMFCTabCtrl::GetTabMaxWidth", "AFXTABCTRL/CMFCTabCtrl::GetTabsHeight", "AFXTABCTRL/CMFCTabCtrl::GetTabsRect", "AFXTABCTRL/CMFCTabCtrl::GetWndArea", "AFXTABCTRL/CMFCTabCtrl::HideActiveWindowHorzScrollBar", "AFXTABCTRL/CMFCTabCtrl::HideInactiveWindow", "AFXTABCTRL/CMFCTabCtrl::HideNoTabs", "AFXTABCTRL/CMFCTabCtrl::HideSingleTab", "AFXTABCTRL/CMFCTabCtrl::IsActiveInMDITabGroup", "AFXTABCTRL/CMFCTabCtrl::IsActiveTabBoldFont", "AFXTABCTRL/CMFCTabCtrl::IsActiveTabCloseButton", "AFXTABCTRL/CMFCTabCtrl::IsDrawFrame", "AFXTABCTRL/CMFCTabCtrl::IsFlatFrame", "AFXTABCTRL/CMFCTabCtrl::IsFlatTab", "AFXTABCTRL/CMFCTabCtrl::IsLeftRightRounded", "AFXTABCTRL/CMFCTabCtrl::IsMDITabGroup", "AFXTABCTRL/CMFCTabCtrl::IsOneNoteStyle", "AFXTABCTRL/CMFCTabCtrl::IsSharedScroll", "AFXTABCTRL/CMFCTabCtrl::IsTabDocumentsMenu", "AFXTABCTRL/CMFCTabCtrl::IsVS2005Style", "AFXTABCTRL/CMFCTabCtrl::ModifyTabStyle", "AFXTABCTRL/CMFCTabCtrl::OnDragEnter", "AFXTABCTRL/CMFCTabCtrl::OnDragOver", "AFXTABCTRL/CMFCTabCtrl::OnShowTabDocumentsMenu", "AFXTABCTRL/CMFCTabCtrl::SetActiveInMDITabGroup", "AFXTABCTRL/CMFCTabCtrl::SetActiveTab", "AFXTABCTRL/CMFCTabCtrl::SetActiveTabBoldFont", "AFXTABCTRL/CMFCTabCtrl::SetDrawFrame", "AFXTABCTRL/CMFCTabCtrl::SetFlatFrame", "AFXTABCTRL/CMFCTabCtrl::SetImageList", "AFXTABCTRL/CMFCTabCtrl::SetResizeMode", "AFXTABCTRL/CMFCTabCtrl::SetTabMaxWidth", "AFXTABCTRL/CMFCTabCtrl::StopResize", "AFXTABCTRL/CMFCTabCtrl::SynchronizeScrollBar", "AFXTABCTRL/CMFCTabCtrl::m_bEnableActivate"]
helpviewer_keywords: ["CMFCTabCtrl [MFC], ActivateMDITab", "CMFCTabCtrl [MFC], AllowDestroyEmptyTabbedPane", "CMFCTabCtrl [MFC], AutoSizeWindow", "CMFCTabCtrl [MFC], CalcRectEdit", "CMFCTabCtrl [MFC], Create", "CMFCTabCtrl [MFC], EnableActiveTabCloseButton", "CMFCTabCtrl [MFC], EnableInPlaceEdit", "CMFCTabCtrl [MFC], EnableTabDocumentsMenu", "CMFCTabCtrl [MFC], EnsureVisible", "CMFCTabCtrl [MFC], GetDocumentIcon", "CMFCTabCtrl [MFC], GetFirstVisibleTabNum", "CMFCTabCtrl [MFC], GetResizeMode", "CMFCTabCtrl [MFC], GetScrollBar", "CMFCTabCtrl [MFC], GetTabArea", "CMFCTabCtrl [MFC], GetTabMaxWidth", "CMFCTabCtrl [MFC], GetTabsHeight", "CMFCTabCtrl [MFC], GetTabsRect", "CMFCTabCtrl [MFC], GetWndArea", "CMFCTabCtrl [MFC], HideActiveWindowHorzScrollBar", "CMFCTabCtrl [MFC], HideInactiveWindow", "CMFCTabCtrl [MFC], HideNoTabs", "CMFCTabCtrl [MFC], HideSingleTab", "CMFCTabCtrl [MFC], IsActiveInMDITabGroup", "CMFCTabCtrl [MFC], IsActiveTabBoldFont", "CMFCTabCtrl [MFC], IsActiveTabCloseButton", "CMFCTabCtrl [MFC], IsDrawFrame", "CMFCTabCtrl [MFC], IsFlatFrame", "CMFCTabCtrl [MFC], IsFlatTab", "CMFCTabCtrl [MFC], IsLeftRightRounded", "CMFCTabCtrl [MFC], IsMDITabGroup", "CMFCTabCtrl [MFC], IsOneNoteStyle", "CMFCTabCtrl [MFC], IsSharedScroll", "CMFCTabCtrl [MFC], IsTabDocumentsMenu", "CMFCTabCtrl [MFC], IsVS2005Style", "CMFCTabCtrl [MFC], ModifyTabStyle", "CMFCTabCtrl [MFC], OnDragEnter", "CMFCTabCtrl [MFC], OnDragOver", "CMFCTabCtrl [MFC], OnShowTabDocumentsMenu", "CMFCTabCtrl [MFC], SetActiveInMDITabGroup", "CMFCTabCtrl [MFC], SetActiveTab", "CMFCTabCtrl [MFC], SetActiveTabBoldFont", "CMFCTabCtrl [MFC], SetDrawFrame", "CMFCTabCtrl [MFC], SetFlatFrame", "CMFCTabCtrl [MFC], SetImageList", "CMFCTabCtrl [MFC], SetResizeMode", "CMFCTabCtrl [MFC], SetTabMaxWidth", "CMFCTabCtrl [MFC], StopResize", "CMFCTabCtrl [MFC], SynchronizeScrollBar", "CMFCTabCtrl [MFC], m_bEnableActivate"]
-ms.assetid: d441385d-2c72-4203-96fa-deae2273da35
---
-# CMFCTabCtrl Class
+# `CMFCTabCtrl` Class
The `CMFCTabCtrl` class provides functionality for a tab control. The tab control displays a dockable window with flat or three-dimensional tabs at its top or bottom. The tabs can display text and an image and can change color when active.
@@ -29,68 +28,68 @@ class CMFCTabCtrl : public CMFCBaseTabCtrl
|Name|Description|
|----------|-----------------|
-|[CMFCTabCtrl::ActivateMDITab](#activatemditab)|Displays the specified tab of the current tab control and sets the focus on that tab.|
-|[CMFCTabCtrl::AllowDestroyEmptyTabbedPane](#allowdestroyemptytabbedpane)||
-|[CMFCTabCtrl::AutoSizeWindow](#autosizewindow)|Specifies whether the framework is to resize the client area of all tab control windows when a user interface element of the tab control changes.|
-|[CMFCTabCtrl::CalcRectEdit](#calcrectedit)|Deflates the size of the specified tab area. (Overrides `CMFCBaseTabCtrl::CalcRectEdit`.)|
-|[CMFCTabCtrl::Create](#create)|Creates the tab control and attaches it to the `CMFCTabCtrl` object.|
+|[`CMFCTabCtrl::ActivateMDITab`](#activatemditab)|Displays the specified tab of the current tab control and sets the focus on that tab.|
+|[`CMFCTabCtrl::AllowDestroyEmptyTabbedPane`](#allowdestroyemptytabbedpane)||
+|[`CMFCTabCtrl::AutoSizeWindow`](#autosizewindow)|Specifies whether the framework is to resize the client area of all tab control windows when a user interface element of the tab control changes.|
+|[`CMFCTabCtrl::CalcRectEdit`](#calcrectedit)|Deflates the size of the specified tab area. (Overrides `CMFCBaseTabCtrl::CalcRectEdit`).|
+|[`CMFCTabCtrl::Create`](#create)|Creates the tab control and attaches it to the `CMFCTabCtrl` object.|
|`CMFCTabCtrl::CreateObject`|Used by the framework to create a dynamic instance of this class type.|
-|[CMFCTabCtrl::EnableActiveTabCloseButton](#enableactivetabclosebutton)|Shows or hides a Close button ( **X**) on the active tab.|
-|[CMFCTabCtrl::EnableInPlaceEdit](#enableinplaceedit)|Enables or disables editable tab labels. (Overrides [CMFCBaseTabCtrl::EnableInPlaceEdit](../../mfc/reference/cmfcbasetabctrl-class.md#enableinplaceedit).)|
-|[CMFCTabCtrl::EnableTabDocumentsMenu](#enabletabdocumentsmenu)|Replaces two buttons that scroll the window tabs with a button that opens a menu of tabbed windows.|
-|[CMFCTabCtrl::EnsureVisible](#ensurevisible)|Ensures that a tab is visible.|
-|[CMFCTabCtrl::GetDocumentIcon](#getdocumenticon)|Retrieves the symbol that is associated with a tab in a popup menu of tabbed windows.|
-|[CMFCTabCtrl::GetFirstVisibleTabNum](#getfirstvisibletabnum)|Retrieves the index of the first tab that is visible in the current tab control.|
-|[CMFCTabCtrl::GetResizeMode](#getresizemode)|Retrieves a value that specifies how the current tab control can be resized.|
-|[CMFCTabCtrl::GetScrollBar](#getscrollbar)|Retrieves a pointer to the scroll bar object that is associated with the tab control.|
-|[CMFCTabCtrl::GetTabArea](#gettabarea)|Retrieves the bounding rectangle of the tab label area at the top or bottom of the tab control. (Overrides [CMFCBaseTabCtrl::GetTabArea](../../mfc/reference/cmfcbasetabctrl-class.md#gettabarea).)|
-|`CMFCTabCtrl::GetTabFromPoint`|Retrieves the tab that contains a specified point. (Overrides [CMFCBaseTabCtrl::GetTabFromPoint](../../mfc/reference/cmfcbasetabctrl-class.md#gettabfrompoint).)|
-|[CMFCTabCtrl::GetTabMaxWidth](#gettabmaxwidth)|Retrieves the maximum width of a tab.|
-|[CMFCTabCtrl::GetTabsHeight](#gettabsheight)|Retrieves the height of the tab area of the current tab control.|
-|[CMFCTabCtrl::GetTabsRect](#gettabsrect)|Retrieves a rectangle that bounds the tab area of the current tab control. (Overrides [CMFCBaseTabCtrl::GetTabsRect](../../mfc/reference/cmfcbasetabctrl-class.md#gettabsrect).)|
-|`CMFCTabCtrl::GetThisClass`|Used by the framework to obtain a pointer to the [CRuntimeClass](../../mfc/reference/cruntimeclass-structure.md) object that is associated with this class type.|
-|[CMFCTabCtrl::GetWndArea](#getwndarea)|Retrieves the boundary of the client area of the current tab control.|
-|[CMFCTabCtrl::HideActiveWindowHorzScrollBar](#hideactivewindowhorzscrollbar)|Hides the horizontal scroll bar, if any, of the active window.|
-|[CMFCTabCtrl::HideInactiveWindow](#hideinactivewindow)|Specifies whether the framework is to display inactive tab control windows.|
-|[CMFCTabCtrl::HideNoTabs](#hidenotabs)|Enables or disables drawing the tab area if there are no visible tabs.|
-|[CMFCTabCtrl::HideSingleTab](#hidesingletab)|Enables or disables drawing a tab when there is a single tabbed window. (Overrides [CMFCBaseTabCtrl::HideSingleTab](../../mfc/reference/cmfcbasetabctrl-class.md#hidesingletab).)|
-|[CMFCTabCtrl::IsActiveInMDITabGroup](#isactiveinmditabgroup)|Indicates whether the current tab of a tab control is the active tab in an multiple document interface tab group.|
-|[CMFCTabCtrl::IsActiveTabBoldFont](#isactivetabboldfont)|Indicates whether the text of the active tab is displayed using a bold font.|
-|[CMFCTabCtrl::IsActiveTabCloseButton](#isactivetabclosebutton)|Indicates whether the Close button ( **X**) is displayed on an active tab or the upper-right corner of the tab area.|
-|[CMFCTabCtrl::IsDrawFrame](#isdrawframe)|Indicates whether the tabbed window draws a frame rectangle around embedded panes.|
-|[CMFCTabCtrl::IsFlatFrame](#isflatframe)|Indicates whether the frame around the tab area is flat or 3D.|
-|[CMFCTabCtrl::IsFlatTab](#isflattab)|Indicates whether the appearance of the tabs in the current tab control is flat or not.|
-|[CMFCTabCtrl::IsLeftRightRounded](#isleftrightrounded)|Indicates whether the appearance of the left and right side of a tab in the current tab control is rounded.|
-|[CMFCTabCtrl::IsMDITabGroup](#ismditabgroup)|Indicates whether the current tab control is contained in the client area of a multiple-document interface window.|
-|[CMFCTabCtrl::IsOneNoteStyle](#isonenotestyle)|Indicates whether the current tab control is displayed in the style of Microsoft OneNote.|
-|`CMFCTabCtrl::IsPtInTabArea`|Determines if a point is inside the tab area. (Overrides [CMFCBaseTabCtrl::IsPtInTabArea](../../mfc/reference/cmfcbasetabctrl-class.md#isptintabarea).)|
-|[CMFCTabCtrl::IsSharedScroll](#issharedscroll)|Indicates whether the current tab control has a scroll bar that can scroll its tabs as a group.|
-|[CMFCTabCtrl::IsTabDocumentsMenu](#istabdocumentsmenu)|Indicates whether the tab control displays scroll buttons or a button that displays a menu of tabbed windows.|
-|[CMFCTabCtrl::IsVS2005Style](#isvs2005style)|Indicates whether tabs are displayed in the style of Visual Studio .NET 2005.|
-|[CMFCTabCtrl::ModifyTabStyle](#modifytabstyle)|Specifies the appearance of tabs in the current tab control.|
-|`CMFCTabCtrl::MoveTab`|Moves a tab to another tab position. (Overrides [CMFCBaseTabCtrl::MoveTab](../../mfc/reference/cmfcbasetabctrl-class.md#movetab).)|
-|[CMFCTabCtrl::OnDragEnter](#ondragenter)|Called by the framework when the cursor is first dragged into the tab control window.|
-|[CMFCTabCtrl::OnDragOver](#ondragover)|Called by the framework during a drag operation when the mouse is moved over the drop target window. (Overrides [CMFCBaseTabCtrl::OnDragOver](../../mfc/reference/cmfcbasetabctrl-class.md#ondragover).)|
-|[CMFCTabCtrl::OnShowTabDocumentsMenu](#onshowtabdocumentsmenu)|Displays a popup menu of tabbed windows, waits until the user selects a tab, and makes the selected tab the active tab.|
-|`CMFCTabCtrl::PreTranslateMessage`|Translates window messages before they are dispatched to the [TranslateMessage](/windows/win32/api/winuser/nf-winuser-translatemessage) and [DispatchMessage](/windows/win32/api/winuser/nf-winuser-dispatchmessage) Windows functions. (Overrides [CMFCBaseTabCtrl::PreTranslateMessage](../../mfc/reference/cmfcbasetabctrl-class.md#pretranslatemessage).)|
-|`CMFCTabCtrl::RecalcLayout`|Recalculates the internal layout of the tab control. (Overrides [CMFCBaseTabCtrl::RecalcLayout](../../mfc/reference/cmfcbasetabctrl-class.md#recalclayout).)|
-|[CMFCTabCtrl::SetActiveInMDITabGroup](#setactiveinmditabgroup)|Sets the current tab of a tab control as the active tab in an multiple document interface tab group.|
-|[CMFCTabCtrl::SetActiveTab](#setactivetab)|Activates a tab. (Overrides [CMFCBaseTabCtrl::SetActiveTab](../../mfc/reference/cmfcbasetabctrl-class.md#setactivetab).)|
-|[CMFCTabCtrl::SetActiveTabBoldFont](#setactivetabboldfont)|Enables or disables use of a bold font on active tabs.|
-|[CMFCTabCtrl::SetDrawFrame](#setdrawframe)|Enables or disables drawing a frame rectangle around an embedded bar.|
-|[CMFCTabCtrl::SetFlatFrame](#setflatframe)|Specifies whether to draw a flat or a 3D frame around the tab area.|
-|[CMFCTabCtrl::SetImageList](#setimagelist)|Specifies an image list. (Overrides [CMFCBaseTabCtrl::SetImageList](../../mfc/reference/cmfcbasetabctrl-class.md#setimagelist).)|
-|[CMFCTabCtrl::SetResizeMode](#setresizemode)|Specifies how the current tab control can be resized and then redisplays the control.|
-|[CMFCTabCtrl::SetTabMaxWidth](#settabmaxwidth)|Specifies the maximum tab width in a tabbed window.|
-|[CMFCTabCtrl::StopResize](#stopresize)|Terminates the current resize operation on the tab control.|
-|`CMFCTabCtrl::SwapTabs`|Swaps a pair of tabs. (Overrides [CMFCBaseTabCtrl::SwapTabs](../../mfc/reference/cmfcbasetabctrl-class.md#swaptabs).)|
-|[CMFCTabCtrl::SynchronizeScrollBar](#synchronizescrollbar)|Draws a horizontal scroll bar on a tab control that displays flat tabs.|
+|[`CMFCTabCtrl::EnableActiveTabCloseButton`](#enableactivetabclosebutton)|Shows or hides a Close button ( **X**) on the active tab.|
+|[`CMFCTabCtrl::EnableInPlaceEdit`](#enableinplaceedit)|Enables or disables editable tab labels. (Overrides [`CMFCBaseTabCtrl::EnableInPlaceEdit`](../../mfc/reference/cmfcbasetabctrl-class.md#enableinplaceedit).)|
+|[`CMFCTabCtrl::EnableTabDocumentsMenu`](#enabletabdocumentsmenu)|Replaces two buttons that scroll the window tabs with a button that opens a menu of tabbed windows.|
+|[`CMFCTabCtrl::EnsureVisible`](#ensurevisible)|Ensures that a tab is visible.|
+|[`CMFCTabCtrl::GetDocumentIcon`](#getdocumenticon)|Retrieves the symbol that is associated with a tab in a popup menu of tabbed windows.|
+|[`CMFCTabCtrl::GetFirstVisibleTabNum`](#getfirstvisibletabnum)|Retrieves the index of the first tab that is visible in the current tab control.|
+|[`CMFCTabCtrl::GetResizeMode`](#getresizemode)|Retrieves a value that specifies how the current tab control can be resized.|
+|[`CMFCTabCtrl::GetScrollBar`](#getscrollbar)|Retrieves a pointer to the scroll bar object that is associated with the tab control.|
+|[`CMFCTabCtrl::GetTabArea`](#gettabarea)|Retrieves the bounding rectangle of the tab label area at the top or bottom of the tab control. (Overrides [`CMFCBaseTabCtrl::GetTabArea`](../../mfc/reference/cmfcbasetabctrl-class.md#gettabarea).)|
+|`CMFCTabCtrl::GetTabFromPoint`|Retrieves the tab that contains a specified point. (Overrides [`CMFCBaseTabCtrl::GetTabFromPoint`](../../mfc/reference/cmfcbasetabctrl-class.md#gettabfrompoint).)|
+|[`CMFCTabCtrl::GetTabMaxWidth`](#gettabmaxwidth)|Retrieves the maximum width of a tab.|
+|[`CMFCTabCtrl::GetTabsHeight`](#gettabsheight)|Retrieves the height of the tab area of the current tab control.|
+|[`CMFCTabCtrl::GetTabsRect`](#gettabsrect)|Retrieves a rectangle that bounds the tab area of the current tab control. (Overrides [`CMFCBaseTabCtrl::GetTabsRect`](../../mfc/reference/cmfcbasetabctrl-class.md#gettabsrect).)|
+|`CMFCTabCtrl::GetThisClass`|Used by the framework to obtain a pointer to the [`CRuntimeClass`](../../mfc/reference/cruntimeclass-structure.md) object that is associated with this class type.|
+|[`CMFCTabCtrl::GetWndArea`](#getwndarea)|Retrieves the boundary of the client area of the current tab control.|
+|[`CMFCTabCtrl::HideActiveWindowHorzScrollBar`](#hideactivewindowhorzscrollbar)|Hides the horizontal scroll bar, if any, of the active window.|
+|[`CMFCTabCtrl::HideInactiveWindow`](#hideinactivewindow)|Specifies whether the framework is to display inactive tab control windows.|
+|[`CMFCTabCtrl::HideNoTabs`](#hidenotabs)|Enables or disables drawing the tab area if there are no visible tabs.|
+|[`CMFCTabCtrl::HideSingleTab`](#hidesingletab)|Enables or disables drawing a tab when there's a single tabbed window. (Overrides [`CMFCBaseTabCtrl::HideSingleTab`](../../mfc/reference/cmfcbasetabctrl-class.md#hidesingletab).)|
+|[`CMFCTabCtrl::IsActiveInMDITabGroup`](#isactiveinmditabgroup)|Indicates whether the current tab of a tab control is the active tab in a multiple document interface tab group.|
+|[`CMFCTabCtrl::IsActiveTabBoldFont`](#isactivetabboldfont)|Indicates whether the text of the active tab is displayed using a bold font.|
+|[`CMFCTabCtrl::IsActiveTabCloseButton`](#isactivetabclosebutton)|Indicates whether the Close button ( **X**) is displayed on an active tab or the upper-right corner of the tab area.|
+|[`CMFCTabCtrl::IsDrawFrame`](#isdrawframe)|Indicates whether the tabbed window draws a frame rectangle around embedded panes.|
+|[`CMFCTabCtrl::IsFlatFrame`](#isflatframe)|Indicates whether the frame around the tab area is flat or 3D.|
+|[`CMFCTabCtrl::IsFlatTab`](#isflattab)|Indicates whether the appearance of the tabs in the current tab control is flat or not.|
+|[`CMFCTabCtrl::IsLeftRightRounded`](#isleftrightrounded)|Indicates whether the appearance of the left and right side of a tab in the current tab control is rounded.|
+|[`CMFCTabCtrl::IsMDITabGroup`](#ismditabgroup)|Indicates whether the current tab control is contained in the client area of a multiple-document interface window.|
+|[`CMFCTabCtrl::IsOneNoteStyle`](#isonenotestyle)|Indicates whether the current tab control is displayed in the style of Microsoft OneNote.|
+|`CMFCTabCtrl::IsPtInTabArea`|Determines if a point is inside the tab area. (Overrides [`CMFCBaseTabCtrl::IsPtInTabArea`](../../mfc/reference/cmfcbasetabctrl-class.md#isptintabarea).)|
+|[`CMFCTabCtrl::IsSharedScroll`](#issharedscroll)|Indicates whether the current tab control has a scroll bar that can scroll its tabs as a group.|
+|[`CMFCTabCtrl::IsTabDocumentsMenu`](#istabdocumentsmenu)|Indicates whether the tab control displays scroll buttons or a button that displays a menu of tabbed windows.|
+|[`CMFCTabCtrl::IsVS2005Style`](#isvs2005style)|Indicates whether tabs are displayed in the style of Visual Studio .NET 2005.|
+|[`CMFCTabCtrl::ModifyTabStyle`](#modifytabstyle)|Specifies the appearance of tabs in the current tab control.|
+|`CMFCTabCtrl::MoveTab`|Moves a tab to another tab position. (Overrides [`CMFCBaseTabCtrl::MoveTab`](../../mfc/reference/cmfcbasetabctrl-class.md#movetab).)|
+|[`CMFCTabCtrl::OnDragEnter`](#ondragenter)|Called by the framework when the cursor is first dragged into the tab control window.|
+|[`CMFCTabCtrl::OnDragOver`](#ondragover)|Called by the framework during a drag operation when the mouse is moved over the drop target window. (Overrides [`CMFCBaseTabCtrl::OnDragOver`](../../mfc/reference/cmfcbasetabctrl-class.md#ondragover).)|
+|[`CMFCTabCtrl::OnShowTabDocumentsMenu`](#onshowtabdocumentsmenu)|Displays a popup menu of tabbed windows, waits until the user selects a tab, and makes the selected tab the active tab.|
+|`CMFCTabCtrl::PreTranslateMessage`|Translates window messages before they're dispatched to the [`TranslateMessage`](/windows/win32/api/winuser/nf-winuser-translatemessage) and [`DispatchMessage`](/windows/win32/api/winuser/nf-winuser-dispatchmessage) Windows functions. (Overrides [`CMFCBaseTabCtrl::PreTranslateMessage`](../../mfc/reference/cmfcbasetabctrl-class.md#pretranslatemessage).)|
+|`CMFCTabCtrl::RecalcLayout`|Recalculates the internal layout of the tab control. (Overrides [`CMFCBaseTabCtrl::RecalcLayout`](../../mfc/reference/cmfcbasetabctrl-class.md#recalclayout).)|
+|[`CMFCTabCtrl::SetActiveInMDITabGroup`](#setactiveinmditabgroup)|Sets the current tab of a tab control as the active tab in a multiple document interface tab group.|
+|[`CMFCTabCtrl::SetActiveTab`](#setactivetab)|Activates a tab. (Overrides [`CMFCBaseTabCtrl::SetActiveTab`](../../mfc/reference/cmfcbasetabctrl-class.md#setactivetab).)|
+|[`CMFCTabCtrl::SetActiveTabBoldFont`](#setactivetabboldfont)|Enables or disables use of a bold font on active tabs.|
+|[`CMFCTabCtrl::SetDrawFrame`](#setdrawframe)|Enables or disables drawing a frame rectangle around an embedded bar.|
+|[`CMFCTabCtrl::SetFlatFrame`](#setflatframe)|Specifies whether to draw a flat or a 3D frame around the tab area.|
+|[`CMFCTabCtrl::SetImageList`](#setimagelist)|Specifies an image list. (Overrides [`CMFCBaseTabCtrl::SetImageList`](../../mfc/reference/cmfcbasetabctrl-class.md#setimagelist).)|
+|[`CMFCTabCtrl::SetResizeMode`](#setresizemode)|Specifies how the current tab control can be resized and then redisplays the control.|
+|[`CMFCTabCtrl::SetTabMaxWidth`](#settabmaxwidth)|Specifies the maximum tab width in a tabbed window.|
+|[`CMFCTabCtrl::StopResize`](#stopresize)|Terminates the current resize operation on the tab control.|
+|`CMFCTabCtrl::SwapTabs`|Swaps a pair of tabs. (Overrides [`CMFCBaseTabCtrl::SwapTabs`](../../mfc/reference/cmfcbasetabctrl-class.md#swaptabs).)|
+|[`CMFCTabCtrl::SynchronizeScrollBar`](#synchronizescrollbar)|Draws a horizontal scroll bar on a tab control that displays flat tabs.|
### Data Members
|Name|Description|
|----------|-----------------|
-|[CMFCTabCtrl::m_bEnableActivate](#m_benableactivate)|Prevents the active view from losing focus when a new tab is inserted and enabled.|
+|[`CMFCTabCtrl::m_bEnableActivate`](#m_benableactivate)|Prevents the active view from losing focus when a new tab is inserted and enabled.|
## Remarks
@@ -108,33 +107,33 @@ The `CMFCTabCtrl` class supports:
- Detachable tabbed windows.
-The `CMFCTabCtrl` class can be used with a dialog box, but is intended for applications that use docking control bars like Microsoft Excel and Visual Studio. For more information, see [CDockablePane Class](../../mfc/reference/cdockablepane-class.md).
+The `CMFCTabCtrl` class can be used with a dialog box, but is intended for applications that use docking control bars like Microsoft Excel and Visual Studio. For more information, see [`CDockablePane` Class](../../mfc/reference/cdockablepane-class.md).
Follow these steps to add a resizable, docking tab control in your application:
-1. Create an instance of [CTabbedPane Class](../../mfc/reference/ctabbedpane-class.md).
+1. Create an instance of [`CTabbedPane` Class](../../mfc/reference/ctabbedpane-class.md).
-1. Call [CDockablePane::Create](../../mfc/reference/cdockablepane-class.md#create).
+1. Call [`CDockablePane::Create`](../../mfc/reference/cdockablepane-class.md#create).
-1. Use [CBaseTabbedPane::AddTab](../../mfc/reference/cbasetabbedpane-class.md#addtab) or [CMFCBaseTabCtrl::InsertTab](../../mfc/reference/cmfcbasetabctrl-class.md#inserttab) to add new tabs.
+1. Use [`CBaseTabbedPane::AddTab`](../../mfc/reference/cbasetabbedpane-class.md#addtab) or [`CMFCBaseTabCtrl::InsertTab`](../../mfc/reference/cmfcbasetabctrl-class.md#inserttab) to add new tabs.
-1. Call [CBasePane::EnableDocking](../../mfc/reference/cbasepane-class.md#enabledocking) so that the current docking tab control can dock at the main frame window.
+1. Call [`CBasePane::EnableDocking`](../../mfc/reference/cbasepane-class.md#enabledocking) so that the current docking tab control can dock at the main frame window.
-1. Call [CFrameWndEx::DockPane](../../mfc/reference/cframewndex-class.md#dockpane) to dock the tabbed window at the main frame.
+1. Call [`CFrameWndEx::DockPane`](../../mfc/reference/cframewndex-class.md#dockpane) to dock the tabbed window at the main frame.
-For an example of how to create a tabbed window as a docking control bar, see [CTabbedPane Class](../../mfc/reference/ctabbedpane-class.md). To use `CMFCTabCtrl` as a non-docking control, create a `CMFCTabCtrl` object and then call [CMFCTabCtrl::Create](#create).
+For an example of how to create a tabbed window as a docking control bar, see [`CTabbedPane` Class](../../mfc/reference/ctabbedpane-class.md). To use `CMFCTabCtrl` as a non-docking control, create a `CMFCTabCtrl` object and then call [`CMFCTabCtrl::Create`](#create).
## Inheritance Hierarchy
-[CObject](../../mfc/reference/cobject-class.md)
+[`CObject`](../../mfc/reference/cobject-class.md)
-[CCmdTarget](../../mfc/reference/ccmdtarget-class.md)
+[`CCmdTarget`](../../mfc/reference/ccmdtarget-class.md)
-[CWnd](../../mfc/reference/cwnd-class.md)
+[`CWnd`](../../mfc/reference/cwnd-class.md)
-[CMFCBaseTabCtrl](../../mfc/reference/cmfcbasetabctrl-class.md)
+[`CMFCBaseTabCtrl`](../../mfc/reference/cmfcbasetabctrl-class.md)
-[CMFCTabCtrl](../../mfc/reference/cmfctabctrl-class.md)
+[`CMFCTabCtrl`](../../mfc/reference/cmfctabctrl-class.md)
## Example
@@ -145,9 +144,9 @@ The following example demonstrates how to use various methods in the `CMFCTabCtr
## Requirements
-**Header:** afxtabctrl.h
+**Header:** `afxtabctrl.h`
-## CMFCTabCtrl::ActivateMDITab
+## `CMFCTabCtrl::ActivateMDITab`
Displays the specified tab of the current tab control and sets the focus on that tab.
@@ -157,12 +156,12 @@ void ActivateMDITab(int nTab = -1);
### Parameters
-*nTab*
+*`nTab`*\
[in] The zero-based index of a tab to display, or -1 to specify the currently active tab.
-## CMFCTabCtrl::AllowDestroyEmptyTabbedPane
+## `CMFCTabCtrl::AllowDestroyEmptyTabbedPane`
-For more detail see the source code located in the **VC\\atlmfc\\src\\mfc** folder of your Visual Studio installation.
+For more detail, see the source code located in the `mfc` folder of your Visual Studio installation. For example, `%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc`.
```
virtual BOOL AllowDestroyEmptyTabbedPane() const;
@@ -170,11 +169,11 @@ virtual BOOL AllowDestroyEmptyTabbedPane() const;
### Return Value
-Always TRUE.
+Always `TRUE`.
### Remarks
-## CMFCTabCtrl::AutoSizeWindow
+## `CMFCTabCtrl::AutoSizeWindow`
Specifies whether the framework is to resize the client area of all tab control windows when a user interface element of the tab control changes.
@@ -184,12 +183,12 @@ void AutoSizeWindow(BOOL bAutoSize = TRUE);
### Parameters
-*bAutoSize*
-[in] TRUE to automatically resize tab control windows; otherwise, FALSE. The default value is TRUE.
+*`bAutoSize`*\
+[in] `TRUE` to automatically resize tab control windows; otherwise, `FALSE`. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::Create
+## `CMFCTabCtrl::Create`
Creates the tab control and attaches it to the `CMFCTabCtrl` object.
@@ -205,48 +204,48 @@ BOOL Create(
### Parameters
-*style*
+*`style`*\
[in] The style of the tab control. For more information, see Remarks.
-*rect*
+*`rect`*\
[in] A rectangle that bounds the tab control.
-*pParentWnd*
-[in] A pointer to a parent window. Must not be NULL.
+*`pParentWnd`*\
+[in] A pointer to a parent window. Must not be `NULL`.
-*nID*
+*`nID`*\
[in] The ID of the tab control.
-*location*
-[in] The location of tabs. The default value is LOCATION_BOTTOM. For more information, see Remarks.
+*`location`*\
+[in] The location of tabs. The default value is `LOCATION_BOTTOM`. For more information, see [Remarks](#create-remarks).
-*bCloseBtn*
-[in] TRUE to display a close button on the tab; otherwise, FALSE. The default value is FALSE.
+*`bCloseBtn`*\
+[in] `TRUE` to display a close button on the tab; otherwise, `FALSE`. The default value is `FALSE`.
### Return Value
-TRUE if successful; otherwise, FALSE.
+`TRUE` if successful; otherwise, `FALSE`.
-### Remarks
+### Remarks
-The following table describes the values you can specify for the *style* parameter.
+The following table describes the values you can specify for the *`style`* parameter.
|Style|Description|
|-----------|-----------------|
-|STYLE_3D|Creates a tab control with a three-dimensional appearance.|
-|STYLE_FLAT|Creates a tab control with flat tabs.|
-|STYLE_FLAT_SHARED_HORZ_SCROLL|Creates a tab control with flat tabs and a scroll bar that can scroll the tabs if they are clipped by a parent window.|
-|STYLE_3D_ONENOTE|Creates a tab control in the style of Microsoft OneNote.|
-|STYLE_3D_VS2005|Creates a tab control in the style of Microsoft Visual Studio 2005.|
-|STYLE_3D_ROUNDED|Creates a tab control with rounded tabs in the style of Microsoft Visual Studio 2005.|
-|STYLE_3D_ROUNDED_SCROLL|Creates a tab control with rounded tabs and scroll buttons in the style of Microsoft Visual Studio 2005.|
+|`STYLE_3D`|Creates a tab control with a three-dimensional appearance.|
+|`STYLE_FLAT`|Creates a tab control with flat tabs.|
+|`STYLE_FLAT_SHARED_HORZ_SCROLL`|Creates a tab control with flat tabs and a scroll bar that can scroll the tabs if they're clipped by a parent window.|
+|`STYLE_3D_ONENOTE`|Creates a tab control in the style of Microsoft OneNote.|
+|`STYLE_3D_VS2005`|Creates a tab control in the style of Microsoft Visual Studio 2005.|
+|`STYLE_3D_ROUNDED`|Creates a tab control with rounded tabs in the style of Microsoft Visual Studio 2005.|
+|`STYLE_3D_ROUNDED_SCROLL`|Creates a tab control with rounded tabs and scroll buttons in the style of Microsoft Visual Studio 2005.|
-The following table lists the values you can specify for the *location* parameter.
+The following table lists the values you can specify for the *`location`* parameter.
|Location|Description|
|--------------|-----------------|
-|LOCATION_BOTTOM|Tabs are located at the bottom of the tab control.|
-|LOCATION_TOP|Tabs are located at the top of the tab control.|
+|`LOCATION_BOTTOM`|Tabs are located at the bottom of the tab control.|
+|`LOCATION_TOP`|Tabs are located at the top of the tab control.|
### Example
@@ -255,7 +254,7 @@ The following example demonstrates how to use the `Create` method in the `CMFCTa
[!code-cpp[NVC_MFC_StateCollection#1](../../mfc/reference/codesnippet/cpp/cmfctabctrl-class_1.h)]
[!code-cpp[NVC_MFC_StateCollection#2](../../mfc/reference/codesnippet/cpp/cmfctabctrl-class_3.cpp)]
-## CMFCTabCtrl::CalcRectEdit
+## `CMFCTabCtrl::CalcRectEdit`
Deflates the size of the specified tab area.
@@ -265,16 +264,16 @@ virtual void CalcRectEdit(CRect& rectEdit);
### Parameters
-*rectEdit*
+*`rectEdit`*\
[in] A rectangle that specifies the area of a tab.
### Remarks
This method is called when you change the label of a tab. This method deflates the left and right sides of the specified rectangle by one-half the current tab height, and deflates the top and bottom by one unit.
-## CMFCTabCtrl::EnableActiveTabCloseButton
+## `CMFCTabCtrl::EnableActiveTabCloseButton`
-Shows or hides a Close button ( **X**) on the active tab.
+Shows or hides a **Close** button ( **`X`**) on the active tab.
```cpp
void EnableActiveTabCloseButton(BOOL bEnable=TRUE);
@@ -282,10 +281,10 @@ void EnableActiveTabCloseButton(BOOL bEnable=TRUE);
### Parameters
-*bEnable*
-[in] TRUE to display the Close button on the active tab; FALSE to display the Close button on the upper-right corner of the tab area. The default value is TRUE.
+*`bEnable`*\
+[in] `TRUE` to display the **Close** button on the active tab; `FALSE` to display the **Close** button on the upper-right corner of the tab area. The default value is `TRUE`.
-## CMFCTabCtrl::EnableInPlaceEdit
+## `CMFCTabCtrl::EnableInPlaceEdit`
Enables or disables editable tab labels.
@@ -295,12 +294,12 @@ virtual void EnableInPlaceEdit(BOOL bEnable);
### Parameters
-*bEnable*
-[in] TRUE to enable editable tab labels; FALSE to disable editable tab labels.
+*`bEnable`*\
+[in] `TRUE` to enable editable tab labels; `FALSE` to disable editable tab labels.
### Remarks
-## CMFCTabCtrl::EnableTabDocumentsMenu
+## `CMFCTabCtrl::EnableTabDocumentsMenu`
Toggles between a user interface that uses two buttons to scroll the window tabs and an interface that displays a pop-up menu of tabbed windows.
@@ -310,14 +309,14 @@ void EnableTabDocumentsMenu(BOOL bEnable=TRUE);
### Parameters
-*bEnable*
-[in] TRUE to display a pop-up menu of tabbed window labels; FALSE to display forward and backward scroll buttons. The default value is TRUE.
+*`bEnable`*\
+[in] `TRUE` to display a pop-up menu of tabbed window labels; `FALSE` to display forward and backward scroll buttons. The default value is `TRUE`.
### Remarks
When the user clicks a tab label, the framework displays the corresponding tabbed window. If the tab label is visible, the tabbed window is opened without changing its position. If the user selects a document from the pop-up menu and the corresponding tabbed window is off screen, the tabbed window becomes the first tab.
-## CMFCTabCtrl::EnsureVisible
+## `CMFCTabCtrl::EnsureVisible`
Ensures that a tab is visible.
@@ -327,18 +326,18 @@ virtual BOOL EnsureVisible(int iTab);
### Parameters
-*iTab*
+*`iTab`*\
[in] The zero-based index of a tab.
### Return Value
-TRUE if it is successful; FALSE if the *iTab* parameter index is invalid.
+`TRUE` if it's successful; `FALSE` if the *`iTab`* parameter index is invalid.
### Remarks
-Use this method to guarantee that the specified tab is visible. The tab control will scroll if it is required.
+Use this method to guarantee that the specified tab is visible. The tab control will scroll if it's required.
-## CMFCTabCtrl::GetDocumentIcon
+## `CMFCTabCtrl::GetDocumentIcon`
Retrieves the image that is associated with a tab in a pop-up menu of tabbed windows.
@@ -348,14 +347,14 @@ static HICON __stdcall GetDocumentIcon(UINT nCmdID);
### Parameters
-*nCmdID*
+*`nCmdID`*\
[in] The command ID of a tab in a pop-up menu of tabbed windows.
### Return Value
The handle of a bitmap image.
-## CMFCTabCtrl::GetFirstVisibleTabNum
+## `CMFCTabCtrl::GetFirstVisibleTabNum`
Retrieves the index of the first tab that is visible in the current tab control.
@@ -369,9 +368,9 @@ The zero-based index of a tab in the tab control.
### Remarks
-Use this method only when the tab control is displayed in the style of Microsoft OneNote. Use the [CMFCTabCtrl::IsOneNoteStyle](#isonenotestyle) method to determine the style.
+Use this method only when the tab control is displayed in the style of Microsoft OneNote. Use the [`CMFCTabCtrl::IsOneNoteStyle`](#isonenotestyle) method to determine the style.
-## CMFCTabCtrl::GetResizeMode
+## `CMFCTabCtrl::GetResizeMode`
Retrieves a value that specifies how the current tab control can be resized.
@@ -381,9 +380,9 @@ ResizeMode GetResizeMode() const;
### Return Value
-One of the `CMFCTabCtrl::ResizeMode` enumeration values that specifies how the tab control can be resized. For a list of possible values, see the Remarks section of the [CMFCTabCtrl::SetResizeMode](#setresizemode) method.
+One of the `CMFCTabCtrl::ResizeMode` enumeration values that specifies how the tab control can be resized. For a list of possible values, see the Remarks section of the [`CMFCTabCtrl::SetResizeMode`](#setresizemode) method.
-## CMFCTabCtrl::GetScrollBar
+## `CMFCTabCtrl::GetScrollBar`
Retrieves a pointer to the scroll bar object that is associated with the tab control.
@@ -393,13 +392,13 @@ CScrollBar* GetScrollBar();
### Return Value
-A pointer to a scrollbar object, or a NULL if the tab control was not created by using the STYLE_FLAT_SHARED_HORZ_SCROLL style.
+A pointer to a scrollbar object, or a `NULL` if the tab control wasn't created by using the `STYLE_FLAT_SHARED_HORZ_SCROLL` style.
### Remarks
-Use this method to access the tab control's embedded scroll bar. A scroll bar object is created only when the tab control has the STYLE_FLAT_SHARED_HORZ_SCROLL style.
+Use this method to access the tab control's embedded scroll bar. A scroll bar object is created only when the tab control has the `STYLE_FLAT_SHARED_HORZ_SCROLL` style.
-## CMFCTabCtrl::GetTabArea
+## `CMFCTabCtrl::GetTabArea`
Retrieves the bounding rectangle of the tab label area at the top or bottom of the tab control.
@@ -411,17 +410,17 @@ void GetTabArea(
### Parameters
-*rectTabAreaTop*
+*`rectTabAreaTop`*\
[out] When this method returns, this reference contains a rectangle that bounds the top tab label area. The rectangle is in client coordinates. This reference is empty if no tab label area exists at the top of the tab control.
-*rectTabAreaBottom*
+*`rectTabAreaBottom`*\
[out] When this method returns, this reference contains a rectangle that bounds the bottom tab label area. The rectangle is in client coordinates. This reference is empty if no tab label area exists at the bottom of the tab control.
### Remarks
Use this method to determine the size and position of the tab area in the tabbed window.
-## CMFCTabCtrl::GetTabMaxWidth
+## `CMFCTabCtrl::GetTabMaxWidth`
Retrieves the maximum width of a tab.
@@ -437,7 +436,7 @@ Maximum width of a tab, in pixels. If the return value is 0, the tab width is un
Use the [CMFCTabCtrl::SetTabMaxWidth](#settabmaxwidth) method to set maximum tab width.
-## CMFCTabCtrl::GetTabsHeight
+## `CMFCTabCtrl::GetTabsHeight`
Retrieves the height of the tab area of the current tab control.
@@ -449,7 +448,7 @@ virtual int GetTabsHeight() const;
The height of the tab area if any tab is visible, or zero if no tab is visible.
-## CMFCTabCtrl::GetTabsRect
+## `CMFCTabCtrl::GetTabsRect`
Retrieves a rectangle that bounds the tab area of the current tab control.
@@ -459,10 +458,10 @@ virtual void GetTabsRect(CRect& rect) const;
### Parameters
-*rect*
-[out] When this method returns, the *rect* parameter contains a rectangle that bounds the tab area.
+*`rect`*\
+[out] When this method returns, the *`rect`* parameter contains a rectangle that bounds the tab area.
-## CMFCTabCtrl::GetWndArea
+## `CMFCTabCtrl::GetWndArea`
Retrieves the boundary of the client area of the current tab control.
@@ -472,12 +471,12 @@ void GetWndArea(CRect& rect) const;
### Parameters
-*rect*
+*`rect`*\
[in, out] When this method returns, this parameter contains a rectangle that bounds the current tab control.
### Remarks
-## CMFCTabCtrl::HideActiveWindowHorzScrollBar
+## `CMFCTabCtrl::HideActiveWindowHorzScrollBar`
Hides the horizontal scroll bar, if any, in the active window.
@@ -489,7 +488,7 @@ void HideActiveWindowHorzScrollBar();
Use this method to prevent the tab control from blinking when the user switches between tab control pages.
-## CMFCTabCtrl::HideInactiveWindow
+## `CMFCTabCtrl::HideInactiveWindow`
Specifies whether the framework displays inactive tab control windows.
@@ -499,12 +498,12 @@ void HideInactiveWindow(BOOL bHide = TRUE);
### Parameters
-*bHide*
-[in] TRUE not to display an inactive window; FALSE to display an inactive window. The default value is TRUE.
+*`bHide`*\
+[in] `TRUE` not to display an inactive window; `FALSE` to display an inactive window. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::HideNoTabs
+## `CMFCTabCtrl::HideNoTabs`
Enables or disables drawing of the tab area if there are no visible tabs.
@@ -514,14 +513,14 @@ void HideNoTabs(BOOL bHide=TRUE);
### Parameters
-*bHide*
-[in] TRUE to enable drawing the tab area; FALSE to disable drawing. The default value is TRUE.
+*`bHide`*\
+[in] `TRUE` to enable drawing the tab area; `FALSE` to disable drawing. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::HideSingleTab
+## `CMFCTabCtrl::HideSingleTab`
-Enables or disables tab drawing if there is a single tabbed window.
+Enables or disables tab drawing if there's a single tabbed window.
```
virtual void HideSingleTab(BOOL bHide=TRUE);
@@ -529,12 +528,12 @@ virtual void HideSingleTab(BOOL bHide=TRUE);
### Parameters
-*bHide*
-[in] TRUE to not draw a tab for a single tabbed window; FALSE to draw a single tab. The default value is TRUE.
+*`bHide`*\
+[in] `TRUE` to not draw a tab for a single tabbed window; `FALSE` to draw a single tab. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::IsActiveInMDITabGroup
+## `CMFCTabCtrl::IsActiveInMDITabGroup`
Indicates whether the current tab of a tab control is the active tab in a multiple document interface tab group.
@@ -544,13 +543,13 @@ BOOL IsActiveInMDITabGroup() const;
### Return Value
-TRUE if the current tab of a tab control is the active tab in an MDI tab group; otherwise, FALSE.
+`TRUE` if the current tab of a tab control is the active tab in an MDI tab group; otherwise, `FALSE`.
### Remarks
You can organize multiple document windows into either vertical or horizontal tab groups and easily shuffle documents from one tab group to another.
-## CMFCTabCtrl::IsActiveTabBoldFont
+## `CMFCTabCtrl::IsActiveTabBoldFont`
Indicates whether the text of the active tab is displayed using a bold font.
@@ -560,15 +559,15 @@ BOOL IsActiveTabBoldFont() const;
### Return Value
-TRUE if the active tab is displayed using the bold font; otherwise, FALSE.
+`TRUE` if the active tab is displayed using the bold font; otherwise, `FALSE`.
### Remarks
-Use the [CMFCTabCtrl::SetActiveTabBoldFont](#setactivetabboldfont) method to change the active tab font.
+Use the [`CMFCTabCtrl::SetActiveTabBoldFont`](#setactivetabboldfont) method to change the active tab font.
-## CMFCTabCtrl::IsActiveTabCloseButton
+## `CMFCTabCtrl::IsActiveTabCloseButton`
-Indicates whether the Close button ( **X**) is displayed on an active tab or on the upper-right corner of the tab area.
+Indicates whether the **Close** button ( **X**) is displayed on an active tab or on the upper-right corner of the tab area.
```
virtual BOOL IsActiveTabCloseButton() const;
@@ -576,11 +575,11 @@ virtual BOOL IsActiveTabCloseButton() const;
### Return Value
-TRUE if the Close button is displayed on the active tab; FALSE if the Close button is displayed on the upper-right corner of the tab area.
+`TRUE` if the **Close** button is displayed on the active tab; `FALSE` if the **Close** button is displayed on the upper-right corner of the tab area.
### Remarks
-## CMFCTabCtrl::IsDrawFrame
+## `CMFCTabCtrl::IsDrawFrame`
Indicates whether the tabbed window draws a frame rectangle around embedded panes.
@@ -590,13 +589,13 @@ BOOL IsDrawFrame() const;
### Return Value
-TRUE if a frame rectangle is drawn; otherwise, FALSE.
+`TRUE` if a frame rectangle is drawn; otherwise, `FALSE`.
### Remarks
-Use the [CMFCTabCtrl::SetDrawFrame](#setdrawframe) method to enable or disable drawing a frame rectangle.
+Use the [`CMFCTabCtrl::SetDrawFrame`](#setdrawframe) method to enable or disable drawing a frame rectangle.
-## CMFCTabCtrl::IsFlatFrame
+## `CMFCTabCtrl::IsFlatFrame`
Indicates whether the frame around the tab area is flat or 3D.
@@ -606,13 +605,13 @@ BOOL IsFlatFrame() const;
### Return Value
-TRUE if the frame around the tab area is flat; FALSE if the frame is three-dimensional.
+`TRUE` if the frame around the tab area is flat; `FALSE` if the frame is three-dimensional.
### Remarks
-Use the [CMFCTabCtrl::SetFlatFrame](#setflatframe) method to change how the frame is drawn.
+Use the [`CMFCTabCtrl::SetFlatFrame`](#setflatframe) method to change how the frame is drawn.
-## CMFCTabCtrl::IsFlatTab
+## `CMFCTabCtrl::IsFlatTab`
Indicates whether the appearance of the tabs in the current tab control is flat or not.
@@ -622,9 +621,9 @@ virtual BOOL IsFlatTab() const;
### Return Value
-TRUE if the appearance of the tabs in the current tab control is flat; otherwise, FALSE.
+`TRUE` if the appearance of the tabs in the current tab control is flat; otherwise, `FALSE`.
-## CMFCTabCtrl::IsLeftRightRounded
+## `CMFCTabCtrl::IsLeftRightRounded`
Indicates whether the appearance of the left and right side of a tab in the current tab control is rounded.
@@ -634,9 +633,9 @@ virtual BOOL IsLeftRightRounded() const;
### Return Value
-TRUE if the sides of each tab is rounded; otherwise, FALSE.
+`TRUE` if the sides of each tab are rounded; otherwise, `FALSE`.
-## CMFCTabCtrl::IsMDITabGroup
+## `CMFCTabCtrl::IsMDITabGroup`
Indicates whether the current tab control is contained in the client area of a multiple-document interface window.
@@ -646,9 +645,9 @@ virtual BOOL IsMDITabGroup() const;
### Return Value
-TRUE if the current tab control is in an MDI client area window; otherwise, FALSE.
+`TRUE` if the current tab control is in an MDI client area window; otherwise, `FALSE`.
-## CMFCTabCtrl::IsOneNoteStyle
+## `CMFCTabCtrl::IsOneNoteStyle`
Indicates whether the current tab control is displayed in the style of Microsoft OneNote.
@@ -658,9 +657,9 @@ virtual BOOL IsOneNoteStyle() const;
### Return Value
-TRUE if the tab control is displayed in the style of Microsoft OneNote; otherwise, FALSE.
+`TRUE` if the tab control is displayed in the style of Microsoft OneNote; otherwise, `FALSE`.
-## CMFCTabCtrl::IsSharedScroll
+## `CMFCTabCtrl::IsSharedScroll`
Indicates whether the current tab control has a scroll bar that can scroll its tabs as a group.
@@ -670,13 +669,13 @@ BOOL IsSharedScroll() const;
### Return Value
-TRUE if the tab control has a shared scroll bar; otherwise, FALSE.
+`TRUE` if the tab control has a shared scroll bar; otherwise, `FALSE`.
### Remarks
-This method returns TRUE if the *style* parameter of the [CMFCTabCtrl::Create](#create) method is STYLE_FLAT_SHARED_HORZ_SCROLL.
+This method returns `TRUE` if the *`style`* parameter of the [`CMFCTabCtrl::Create`](#create) method is `STYLE_FLAT_SHARED_HORZ_SCROLL`.
-## CMFCTabCtrl::IsTabDocumentsMenu
+## `CMFCTabCtrl::IsTabDocumentsMenu`
Indicates whether the tab control displays scroll buttons or a button that displays a menu of tabbed windows.
@@ -686,13 +685,13 @@ BOOL IsTabDocumentsMenu() const;
### Return Value
-TRUE if tabbed windows are scrolled using a popup menu of tabbed window labels; FALSE if tabbed windows are scrolled using forward and backward scroll buttons.
+`TRUE` if tabbed windows are scrolled using a popup menu of tabbed window labels; `FALSE` if tabbed windows are scrolled using forward and backward scroll buttons.
### Remarks
-Use the [CMFCTabCtrl::EnableTabDocumentsMenu](#enabletabdocumentsmenu) method to specify the method of scrolling tabbed windows.
+Use the [`CMFCTabCtrl::EnableTabDocumentsMenu`](#enabletabdocumentsmenu) method to specify the method of scrolling tabbed windows.
-## CMFCTabCtrl::IsVS2005Style
+## `CMFCTabCtrl::IsVS2005Style`
Indicates whether tabs are drawn using the style of Visual Studio 2005.
@@ -702,13 +701,13 @@ virtual BOOL IsVS2005Style() const;
### Return Value
-TRUE if tabs are drawn using the style of Visual Studio 2005; otherwise, FALSE.
+`TRUE` if tabs are drawn using the style of Visual Studio 2005; otherwise, `FALSE`.
### Remarks
-Use the *style* parameter of the [CMFCTabCtrl::Create](#create) method to specify how tabs are drawn.
+Use the *`style`* parameter of the [`CMFCTabCtrl::Create`](#create) method to specify how tabs are drawn.
-## CMFCTabCtrl::m_bEnableActivate
+## `CMFCTabCtrl::m_bEnableActivate`
Prevents the active view from losing focus when a new tab is inserted and enabled.
@@ -718,9 +717,9 @@ static BOOL m_bEnableActivate;
### Remarks
-The focus is usually taken by a new tabbed window when the tab is inserted and made active. Set the `CMFCTabCtrl::m_bEnableActivate` member variable to FALSE to retain the original focus. The default value is TRUE.
+The focus is usually taken by a new tabbed window when the tab is inserted and made active. Set the `CMFCTabCtrl::m_bEnableActivate` member variable to `FALSE` to retain the original focus. The default value is `TRUE`.
-## CMFCTabCtrl::ModifyTabStyle
+## `CMFCTabCtrl::ModifyTabStyle`
Specifies the appearance of tabs in the current tab control.
@@ -730,29 +729,29 @@ BOOL ModifyTabStyle(Style style);
### Parameters
-*style*
-[in] One of the enumeration values that specifies the appearance of the tab control. For more information, see the table in Remarks.
+*`style`*\
+[in] One of the enumeration values that specifies the appearance of the tab control. For more information, see the table in [Remarks](#modifytabstyle-remarks).
### Return Value
-Always TRUE.
+Always `TRUE`.
-### Remarks
+### Remarks
-The value of the *style* parameter can be one of the following `CMFCTabCtrl::Style` enumerations.
+The value of the *`style`* parameter can be one of the following `CMFCTabCtrl::Style` enumerations.
|Name|Description|
|----------|-----------------|
-|STYLE_3D|Displays three-dimensional, rectangular tabs that have round corners.|
-|STYLE_3D_ONENOTE|Displays three-dimensional tabs that have one vertical side and one slanted side and that have rounded corners.|
-|STYLE_3D_ROUNDED|Displays three-dimensional tabs that have slanted sides and rounded corners.|
-|STYLE_3D_ROUNDED_SCROLL|Displays three-dimensional tabs that have slanted sides and rounded corners. If there are more tabs than can be displayed at the same time, the framework displays a drop-down arrow and a menu of tabs to make active.|
-|STYLE_3D_SCROLLED|Displays three-dimensional, rectangular tabs. If there are more tabs than can be displayed at the same time, the framework displays a drop-down arrow and a menu of tabs to make active.|
-|STYLE_3D_VS2005|Displays three-dimensional, rounded tabs that have one slanted side and one vertical side.|
-|STYLE_FLAT|Displays two-dimensional tabs that have slanted left and right sides.|
-|STYLE_FLAT_SHARED_HORZ_SCROLL|Displays two-dimensional tabs. If there are more tabs than can be displayed at the same time, the framework displays scroll arrows at the ends of the tab area.|
+|`STYLE_3D`|Displays three-dimensional, rectangular tabs that have round corners.|
+|`STYLE_3D_ONENOTE`|Displays three-dimensional tabs that have one vertical side and one slanted side and that have rounded corners.|
+|`STYLE_3D_ROUNDED`|Displays three-dimensional tabs that have slanted sides and rounded corners.|
+|`STYLE_3D_ROUNDED_SCROLL`|Displays three-dimensional tabs that have slanted sides and rounded corners. If there are more tabs than can be displayed at the same time, the framework displays a drop-down arrow and a menu of tabs to make active.|
+|`STYLE_3D_SCROLLED`|Displays three-dimensional, rectangular tabs. If there are more tabs than can be displayed at the same time, the framework displays a drop-down arrow and a menu of tabs to make active.|
+|`STYLE_3D_VS2005`|Displays three-dimensional, rounded tabs that have one slanted side and one vertical side.|
+|`STYLE_FLAT`|Displays two-dimensional tabs that have slanted left and right sides.|
+|`STYLE_FLAT_SHARED_HORZ_SCROLL`|Displays two-dimensional tabs. If there are more tabs than can be displayed at the same time, the framework displays scroll arrows at the ends of the tab area.|
-## CMFCTabCtrl::OnDragEnter
+## `CMFCTabCtrl::OnDragEnter`
Called by the framework during a drag-and-drop operation when the cursor first enters the window of the current tab control.
@@ -765,26 +764,26 @@ virtual DROPEFFECT OnDragEnter(
### Parameters
-*pDataObject*
+*`pDataObject`*\
[in] Points to a data object that contains data that the user drags.
-*dwKeyState*
-[in] Contains the state of the modifier keys. This parameter is a bitwise combination (OR) of the following values: MK_CONTROL, MK_SHIFT, MK_ALT, MK_LBUTTON, MK_MBUTTON, and MK_RBUTTON. For more information, see the **Message Parameters** section of [About Mouse Input](/windows/win32/inputdev/about-mouse-input).
+*`dwKeyState`*\
+[in] Contains the state of the modifier keys. This parameter is a bitwise combination "or" (`|`) of the following values: `MK_CONTROL`, `MK_SHIFT`, `MK_ALT`, `MK_LBUTTON`, `MK_MBUTTON`, and `MK_RBUTTON`. For more information, see the **Message Parameters** section of [About Mouse Input](/windows/win32/inputdev/about-mouse-input#message-parameters).
-*point*
+*`point`*\
[in] Contains the current location of the cursor in client coordinates.
### Return Value
-Always DROPEFFECT_NONE, which means that the drop target cannot accept the data.
+Always `DROPEFFECT_NONE`, which means that the drop target can’t accept the data.
### Remarks
Use this method to support a drag-and-drop operation. Override this method to implement your own custom behavior.
-By default, this method only calls `CMFCTabCtrl::OnDragOver`, which always returns DROPEFFECT_NONE.
+By default, this method only calls `CMFCTabCtrl::OnDragOver`, which always returns `DROPEFFECT_NONE`.
-## CMFCTabCtrl::OnDragOver
+## `CMFCTabCtrl::OnDragOver`
Called by the framework during a drag operation when the mouse is moved over the drop target window.
@@ -797,24 +796,24 @@ virtual DROPEFFECT OnDragOver(
### Parameters
-*pDataObject*
-[in] Pointer to a [COleDataObject](../../mfc/reference/coledataobject-class.md) object that is being dragged over the drop target.
+*`pDataObject`*\
+[in] Pointer to a [`COleDataObject`](../../mfc/reference/coledataobject-class.md) object that is being dragged over the drop target.
-*dwKeyState*
-[in] The state of the modifier keys, which is a bitwise combination (OR) of MK_CONTROL, MK_SHIFT, MK_ALT, MK_LBUTTON, MK_MBUTTON, and MK_RBUTTON. For more information, see "Message Parameters" in [About Mouse Input](/windows/win32/inputdev/about-mouse-input).
+*`dwKeyState`*\
+[in] The state of the modifier keys, which is a bitwise combination "or" (`|`) of `MK_CONTROL`, `MK_SHIFT`, `MK_ALT`, `MK_LBUTTON`, `MK_MBUTTON`, and `MK_RBUTTON`. For more information, see "Message Parameters" in [About Mouse Input](/windows/win32/inputdev/about-mouse-input#message-parameters).
-*point*
+*`point`*\
[in] The current mouse position.
### Return Value
-Always DROPEFFECT_NONE.
+Always `DROPEFFECT_NONE`.
### Remarks
-Override this method with your custom implementation. For more information, see the [CView::OnDragOver](../../mfc/reference/cview-class.md#ondragover) method.
+Override this method with your custom implementation. For more information, see the [`CView::OnDragOver`](../../mfc/reference/cview-class.md#ondragover) method.
-## CMFCTabCtrl::OnShowTabDocumentsMenu
+## `CMFCTabCtrl::OnShowTabDocumentsMenu`
Displays a pop-up menu of tabbed windows, waits until the user selects a tab, and makes the selected tab the active tab.
@@ -824,12 +823,12 @@ virtual void OnShowTabDocumentsMenu(CPoint point);
### Parameters
-*point*
+*`point`*\
[in] The coordinates of where to display the pop-up menu.
### Remarks
-## CMFCTabCtrl::SetActiveInMDITabGroup
+## `CMFCTabCtrl::SetActiveInMDITabGroup`
Sets the current tab of a tab control as the active tab in a multiple document interface tab group.
@@ -839,14 +838,14 @@ void SetActiveInMDITabGroup(BOOL bActive);
### Parameters
-*bActive*
-[in] TRUE to make the current tab the active tab; FALSE to make the current tab inactive.
+*`bActive`*\
+[in] `TRUE` to make the current tab the active tab; `FALSE` to make the current tab inactive.
### Remarks
You can organize multiple document windows into either vertical or horizontal tab groups and easily shuffle documents from one tab group to another.
-## CMFCTabCtrl::SetActiveTab
+## `CMFCTabCtrl::SetActiveTab`
Activates a tab.
@@ -856,20 +855,20 @@ virtual BOOL SetActiveTab(int iTab);
### Parameters
-*iTab*
+*`iTab`*\
[in] Specifies the zero-based index of the tab to activate.
### Return Value
-TRUE if the specified tab was made active; FALSE if the specified *iTab* parameter value is invalid.
+`TRUE` if the specified tab was made active; `FALSE` if the specified *`iTab`* parameter value is invalid.
### Remarks
This sends the `AFX_WM_CHANGE_ACTIVE_TAB` notification to the parent window and the parent's frame of the tab control.
-The `SetActiveTab` method automatically calls the [CMFCTabCtrl::HideActiveWindowHorzScrollBar](#hideactivewindowhorzscrollbar) method to prevent the screen from blinking.
+The `SetActiveTab` method automatically calls the [`CMFCTabCtrl::HideActiveWindowHorzScrollBar`](#hideactivewindowhorzscrollbar) method to prevent the screen from blinking.
-## CMFCTabCtrl::SetActiveTabBoldFont
+## `CMFCTabCtrl::SetActiveTabBoldFont`
Enables or disables use of a bold font on active tabs.
@@ -879,12 +878,12 @@ void SetActiveTabBoldFont(BOOL bIsBold=TRUE);
### Parameters
-*bIsBold*
-[in] TRUE to use a bold font to display the label of the active tab; FALSE to use the standard font to display the label. The default value is TRUE.
+*`bIsBold`*\
+[in] `TRUE` to use a bold font to display the label of the active tab; `FALSE` to use the standard font to display the label. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::SetDrawFrame
+## `CMFCTabCtrl::SetDrawFrame`
Specifies whether a frame rectangle is drawn around an embedded bar.
@@ -894,12 +893,12 @@ void SetDrawFrame(BOOL bDraw=TRUE);
### Parameters
-*bDraw*
-[in] TRUE to display a frame rectangle around an embedded bar; otherwise, FALSE. The default value is TRUE.
+*`bDraw`*\
+[in] `TRUE` to display a frame rectangle around an embedded bar; otherwise, `FALSE`. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::SetFlatFrame
+## `CMFCTabCtrl::SetFlatFrame`
Specifies whether to draw a flat or a 3D frame around the tab area.
@@ -911,15 +910,15 @@ void SetFlatFrame(
### Parameters
-*bFlat*
-[in] TRUE to draw a flat (2D) frame around the tab area; FALSE to draw a three-dimensional (3D) frame. The default value is TRUE.
+*`bFlat`*\
+[in] `TRUE` to draw a flat (2D) frame around the tab area; `FALSE` to draw a three-dimensional (3D) frame. The default value is `TRUE`.
-*bRepaint*
-[in] TRUE to redraw the window immediately; otherwise, FALSE. The default value is TRUE.
+*`bRepaint`*\
+[in] `TRUE` to redraw the window immediately; otherwise, `FALSE`. The default value is `TRUE`.
### Remarks
-## CMFCTabCtrl::SetImageList
+## `CMFCTabCtrl::SetImageList`
Specifies an image list.
@@ -934,29 +933,29 @@ virtual BOOL SetImageList(HIMAGELIST hImageList);
### Parameters
-*uiID*
+*`uiID`*\
[in] The ID of a bitmap resource that contains the image list.
-*cx*
+*`cx`*\
[in] The width of each image, in pixels. The default value is 15.
-*clrTransp*
+*`clrTransp`*\
[in] The transparent image color. The parts of the image that are this color will be transparent. The default value is the color magenta, RGB(255,0,255).
-*hImageList*
+*`hImageList`*\
[in] A handle to a preloaded image list.
### Return Value
-TRUE if this method is successful. FALSE if the tab control is created by using a flat style or if the first method overload cannot load the bitmap that is specified by the *uiID* parameter.
+`TRUE` if this method is successful. `FALSE` if the tab control is created by using a flat style or if the first method overload can’t load the bitmap that is specified by the *`uiID`* parameter.
### Remarks
Use this method to set an image list for the tab control. The images from the image list are displayed next to the tab label. This method recalculates the tab height so that the tab is sized to contain both the image and the text.
-Use the [CMFCBaseTabCtrl::AddTab](../../mfc/reference/cmfcbasetabctrl-class.md#addtab) method that is inherited by the tab control to specify the index of the image to display.
+Use the [`CMFCBaseTabCtrl::AddTab`](../../mfc/reference/cmfcbasetabctrl-class.md#addtab) method that is inherited by the tab control to specify the index of the image to display.
-## CMFCTabCtrl::SetResizeMode
+## `CMFCTabCtrl::SetResizeMode`
Specifies how the current tab control can be resized and then redisplays the control.
@@ -966,20 +965,20 @@ void SetResizeMode(ResizeMode resizeMode);
### Parameters
-*resizeMode*
-[in] One of the `CMFCTabCtrl::ResizeMode` enumeration values that specifies how the tab control can be resized. For a list of possible values, see the table in Remarks.
+*`resizeMode`*\
+[in] One of the `CMFCTabCtrl::ResizeMode` enumeration values that specifies how the tab control can be resized. For a list of possible values, see the table in [Remarks](#setresizemode-remarks).
-### Remarks
+### Remarks
The *resizeMode* parameter can be one of the following `ResizeMode` enumeration values.
|Name|Description|
|----------|-----------------|
-|RESIZE_NO|The tab control cannot be resized.|
-|RESIZE_VERT|The tab control can be resized vertically but not horizontally.|
-|RESIZE_HORIZ|The tab control can be resized horizontally but not vertically.|
+|`RESIZE_NO`|The tab control can’t be resized.|
+|`RESIZE_VERT`|The tab control can be resized vertically but not horizontally.|
+|`RESIZE_HORIZ`|The tab control can be resized horizontally but not vertically.|
-## CMFCTabCtrl::SetTabMaxWidth
+## `CMFCTabCtrl::SetTabMaxWidth`
Specifies the maximum tab width in a tabbed window.
@@ -989,14 +988,14 @@ void SetTabMaxWidth(int nTabMaxWidth);
### Parameters
-*nTabMaxWidth*
+*`nTabMaxWidth`*\
[in] The maximum tab width, in pixels.
### Remarks
-Use this method to limit the width of each tab in a tabbed window. This method is useful if tabs have very long labels. The [CMFCTabCtrl](../../mfc/reference/cmfctabctrl-class.md) class constructor initializes the maximum tab width to 0, which actually means that the width is not limited.
+Use this method to limit the width of each tab in a tabbed window. This method is useful if tabs have very long labels. The [`CMFCTabCtrl`](../../mfc/reference/cmfctabctrl-class.md) class constructor initializes the maximum tab width to 0, which actually means that the width isn't limited.
-## CMFCTabCtrl::StopResize
+## `CMFCTabCtrl::StopResize`
Terminates the current resize operation on the tab control.
@@ -1006,10 +1005,10 @@ void StopResize(BOOL bCancel);
### Parameters
-*bCancel*
-[in] TRUE to abandon the current resize operation; FALSE to complete the current resize operation. In either case, the framework stops drawing the resize rectangle.
+*`bCancel`*\
+[in] `TRUE` to abandon the current resize operation; `FALSE` to complete the current resize operation. In either case, the framework stops drawing the resize rectangle.
-## CMFCTabCtrl::SynchronizeScrollBar
+## `CMFCTabCtrl::SynchronizeScrollBar`
Draws a horizontal scroll bar on a tab control that displays flat tabs.
@@ -1019,12 +1018,12 @@ BOOL SynchronizeScrollBar(SCROLLINFO* pScrollInfo = NULL);
### Parameters
-*pScrollInfo*
-[out] Pointer to a [SCROLLINFO](/windows/win32/api/winuser/ns-winuser-scrollinfo) structure or NULL. When this method returns, and if this parameter is not NULL, the structure contains all the parameters of the scroll bar. The default value is NULL.
+*`pScrollInfo`*\
+[out] Pointer to a [`SCROLLINFO`](/windows/win32/api/winuser/ns-winuser-scrollinfo) structure or `NULL`. When this method returns, and if this parameter isn't `NULL`, the structure contains all the parameters of the scroll bar. The default value is `NULL`.
### Return Value
-TRUE if this method succeeds; otherwise, FALSE.
+`TRUE` if this method succeeds; otherwise, `FALSE`.
### Remarks
@@ -1032,7 +1031,7 @@ This method affects only a tab control that displays flat tabs. The scroll bar i
## See also
-[Hierarchy Chart](../../mfc/hierarchy-chart.md)
-[Classes](../../mfc/reference/mfc-classes.md)
-[CDockablePane Class](../../mfc/reference/cdockablepane-class.md)
-[CMFCBaseTabCtrl Class](../../mfc/reference/cmfcbasetabctrl-class.md)
+[Hierarchy Chart](../../mfc/hierarchy-chart.md)\
+[Classes](../../mfc/reference/mfc-classes.md)\
+[`CDockablePane` Class](../../mfc/reference/cdockablepane-class.md)\
+[`CMFCBaseTabCtrl` Class](../../mfc/reference/cmfcbasetabctrl-class.md)
diff --git a/docs/mfc/reference/cprintdialog-class.md b/docs/mfc/reference/cprintdialog-class.md
index 0053a218017..d4c03521ce6 100644
--- a/docs/mfc/reference/cprintdialog-class.md
+++ b/docs/mfc/reference/cprintdialog-class.md
@@ -4,9 +4,8 @@ title: "CPrintDialog Class"
ms.date: "11/04/2016"
f1_keywords: ["CPrintDialog", "AFXDLGS/CPrintDialog", "AFXDLGS/CPrintDialog::CPrintDialog", "AFXDLGS/CPrintDialog::CreatePrinterDC", "AFXDLGS/CPrintDialog::DoModal", "AFXDLGS/CPrintDialog::GetCopies", "AFXDLGS/CPrintDialog::GetDefaults", "AFXDLGS/CPrintDialog::GetDeviceName", "AFXDLGS/CPrintDialog::GetDevMode", "AFXDLGS/CPrintDialog::GetDriverName", "AFXDLGS/CPrintDialog::GetFromPage", "AFXDLGS/CPrintDialog::GetPortName", "AFXDLGS/CPrintDialog::GetPrinterDC", "AFXDLGS/CPrintDialog::GetToPage", "AFXDLGS/CPrintDialog::PrintAll", "AFXDLGS/CPrintDialog::PrintCollate", "AFXDLGS/CPrintDialog::PrintRange", "AFXDLGS/CPrintDialog::PrintSelection", "AFXDLGS/CPrintDialog::m_pd"]
helpviewer_keywords: ["CPrintDialog [MFC], CPrintDialog", "CPrintDialog [MFC], CreatePrinterDC", "CPrintDialog [MFC], DoModal", "CPrintDialog [MFC], GetCopies", "CPrintDialog [MFC], GetDefaults", "CPrintDialog [MFC], GetDeviceName", "CPrintDialog [MFC], GetDevMode", "CPrintDialog [MFC], GetDriverName", "CPrintDialog [MFC], GetFromPage", "CPrintDialog [MFC], GetPortName", "CPrintDialog [MFC], GetPrinterDC", "CPrintDialog [MFC], GetToPage", "CPrintDialog [MFC], PrintAll", "CPrintDialog [MFC], PrintCollate", "CPrintDialog [MFC], PrintRange", "CPrintDialog [MFC], PrintSelection", "CPrintDialog [MFC], m_pd"]
-ms.assetid: 5bdb2424-adf8-433d-a97c-df11a83bc4e4
---
-# CPrintDialog Class
+# `CPrintDialog` Class
Encapsulates the services provided by the Windows common dialog box for printing.
@@ -22,62 +21,62 @@ class CPrintDialog : public CCommonDialog
|Name|Description|
|----------|-----------------|
-|[CPrintDialog::CPrintDialog](#cprintdialog)|Constructs a `CPrintDialog` object.|
+|[`CPrintDialog::CPrintDialog`](#cprintdialog)|Constructs a `CPrintDialog` object.|
### Public Methods
|Name|Description|
|----------|-----------------|
-|[CPrintDialog::CreatePrinterDC](#createprinterdc)|Creates a printer device context without displaying the Print dialog box.|
-|[CPrintDialog::DoModal](#domodal)|Displays the dialog box and allows the user to make a selection.|
-|[CPrintDialog::GetCopies](#getcopies)|Retrieves the number of copies requested.|
-|[CPrintDialog::GetDefaults](#getdefaults)|Retrieves device defaults without displaying a dialog box.|
-|[CPrintDialog::GetDeviceName](#getdevicename)|Retrieves the name of the currently selected printer device.|
-|[CPrintDialog::GetDevMode](#getdevmode)|Retrieves the `DEVMODE` structure.|
-|[CPrintDialog::GetDriverName](#getdrivername)|Retrieves the name of the currently selected printer driver.|
-|[CPrintDialog::GetFromPage](#getfrompage)|Retrieves the starting page of the print range.|
-|[CPrintDialog::GetPortName](#getportname)|Retrieves the name of the currently selected printer port.|
-|[CPrintDialog::GetPrinterDC](#getprinterdc)|Retrieves a handle to the printer device context.|
-|[CPrintDialog::GetToPage](#gettopage)|Retrieves the ending page of the print range.|
-|[CPrintDialog::PrintAll](#printall)|Determines whether to print all pages of the document.|
-|[CPrintDialog::PrintCollate](#printcollate)|Determines whether collated copies are requested.|
-|[CPrintDialog::PrintRange](#printrange)|Determines whether to print only a specified range of pages.|
-|[CPrintDialog::PrintSelection](#printselection)|Determines whether to print only the currently selected items.|
+|[`CPrintDialog::CreatePrinterDC`](#createprinterdc)|Creates a printer device context without displaying the Print dialog box.|
+|[`CPrintDialog::DoModal`](#domodal)|Displays the dialog box and allows the user to make a selection.|
+|[`CPrintDialog::GetCopies`](#getcopies)|Retrieves the number of copies requested.|
+|[`CPrintDialog::GetDefaults`](#getdefaults)|Retrieves device defaults without displaying a dialog box.|
+|[`CPrintDialog::GetDeviceName`](#getdevicename)|Retrieves the name of the currently selected printer device.|
+|[`CPrintDialog::GetDevMode`](#getdevmode)|Retrieves the `DEVMODE` structure.|
+|[`CPrintDialog::GetDriverName`](#getdrivername)|Retrieves the name of the currently selected printer driver.|
+|[`CPrintDialog::GetFromPage`](#getfrompage)|Retrieves the starting page of the print range.|
+|[`CPrintDialog::GetPortName`](#getportname)|Retrieves the name of the currently selected printer port.|
+|[`CPrintDialog::GetPrinterDC`](#getprinterdc)|Retrieves a handle to the printer device context.|
+|[`CPrintDialog::GetToPage`](#gettopage)|Retrieves the ending page of the print range.|
+|[`CPrintDialog::PrintAll`](#printall)|Determines whether to print all pages of the document.|
+|[`CPrintDialog::PrintCollate`](#printcollate)|Determines whether collated copies are requested.|
+|[`CPrintDialog::PrintRange`](#printrange)|Determines whether to print only a specified range of pages.|
+|[`CPrintDialog::PrintSelection`](#printselection)|Determines whether to print only the currently selected items.|
### Public Data Members
|Name|Description|
|----------|-----------------|
-|[CPrintDialog::m_pd](#m_pd)|A structure used to customize a `CPrintDialog` object.|
+|[`CPrintDialog::m_pd`](#m_pd)|A structure used to customize a `CPrintDialog` object.|
## Remarks
Common print dialog boxes provide an easy way to implement Print and Print Setup dialog boxes in a manner consistent with Windows standards.
> [!NOTE]
-> The `CPrintDialogEx` class encapsulates the services provided by the Windows Print property sheet. For more information see the [CPrintDialogEx](../../mfc/reference/cprintdialogex-class.md) overview.
+> The `CPrintDialogEx` class encapsulates the services provided by the Windows Print property sheet. For more information, see the [`CPrintDialogEx`](../../mfc/reference/cprintdialogex-class.md) overview.
-`CPrintDialog`'s functionality is superseded by that of [CPageSetupDialog](../../mfc/reference/cpagesetupdialog-class.md), which is designed to provide you with a common dialog box for both print setup and page setup.
+`CPrintDialog`'s functionality is superseded by that of [`CPageSetupDialog`](../../mfc/reference/cpagesetupdialog-class.md), which is designed to provide you with a common dialog box for both print setup and page setup.
You can rely on the framework to handle many aspects of the printing process for your application. In this case, the framework automatically displays the Windows common dialog box for printing. You can also have the framework handle printing for your application but override the common Print dialog box with your own print dialog box. For more information about using the framework to handle printing tasks, see the article [Printing](../../mfc/printing.md).
-If you want your application to handle printing without the framework's involvement, you can use the `CPrintDialog` class "as is" with the constructor provided, or you can derive your own dialog class from `CPrintDialog` and write a constructor to suit your needs. In either case, these dialog boxes will behave like standard MFC dialog boxes because they are derived from class `CCommonDialog`.
+If you want your application to handle printing without the framework's involvement, you can use the `CPrintDialog` class "as is" with the constructor provided, or you can derive your own dialog class from `CPrintDialog` and write a constructor to suit your needs. In either case, these dialog boxes will behave like standard MFC dialog boxes because they're derived from class `CCommonDialog`.
-To use a `CPrintDialog` object, first create the object using the `CPrintDialog` constructor. Once the dialog box has been constructed, you can set or modify any values in the [m_pd](#m_pd) structure to initialize the values of the dialog box's controls. The `m_pd` structure is of type [PRINTDLG](/windows/win32/api/commdlg/ns-commdlg-printdlga). For more information on this structure, see the Windows SDK.
+To use a `CPrintDialog` object, first create the object using the `CPrintDialog` constructor. Once the dialog box has been constructed, you can set or modify any values in the [`m_pd`](#m_pd) structure to initialize the values of the dialog box's controls. The `m_pd` structure is of type [`PRINTDLG`](/windows/win32/api/commdlg/ns-commdlg-printdlga). For more information on this structure, see the Windows SDK.
-If you do not supply your own handles in `m_pd` for the `hDevMode` and `hDevNames` members, be sure to call the Windows function `GlobalFree` for these handles when you are done with the dialog box. When using the framework's Print Setup implementation provided by `CWinApp::OnFilePrintSetup`, you do not have to free these handles. The handles are maintained by `CWinApp` and are freed in `CWinApp`'s destructor. It is only necessary to free these handles when using `CPrintDialog` stand-alone.
+If you don't supply your own handles in `m_pd` for the `hDevMode` and `hDevNames` members, be sure to call the Windows function `GlobalFree` for these handles when you're done with the dialog box. When using the framework's Print Setup implementation provided by `CWinApp::OnFilePrintSetup`, you don't have to free these handles. The handles are maintained by `CWinApp` and are freed in `CWinApp`'s destructor. It's only necessary to free these handles when using `CPrintDialog` stand-alone.
-After initializing the dialog box controls, call the `DoModal` member function to display the dialog box and allow the user to select print options. `DoModal` returns whether the user selected the OK (IDOK) or Cancel (IDCANCEL) button.
+After initializing the dialog box controls, call the `DoModal` member function to display the dialog box and allow the user to select print options. `DoModal` returns whether the user selected the **OK** (`IDOK`) or **Cancel** (`IDCANCEL`) button.
-If `DoModal` returns IDOK, you can use one of `CPrintDialog`'s member functions to retrieve the information input by the user.
+If `DoModal` returns `IDOK`, you can use one of `CPrintDialog`'s member functions to retrieve the information input by the user.
The `CPrintDialog::GetDefaults` member function is useful for retrieving the current printer defaults without displaying a dialog box. This member function requires no user interaction.
You can use the Windows `CommDlgExtendedError` function to determine whether an error occurred during initialization of the dialog box and to learn more about the error. For more information on this function, see the Windows SDK.
-`CPrintDialog` relies on the COMMDLG.DLL file that ships with Windows versions 3.1 and later.
+`CPrintDialog` relies on the `COMMDLG.DLL` file that ships with Windows versions 3.1 and later.
-To customize the dialog box, derive a class from `CPrintDialog`, provide a custom dialog template, and add a message map to process the notification messages from the extended controls. Any unprocessed messages should be passed on to the base class. Customizing the hook function is not required.
+To customize the dialog box, derive a class from `CPrintDialog`, provide a custom dialog template, and add a message map to process the notification messages from the extended controls. Any unprocessed messages should be passed on to the base class. Customizing the hook function isn't required.
To process the same message differently depending on whether the dialog box is Print or Print Setup, you must derive a class for each dialog box. You must also override the Windows `AttachOnSetup` function, which handles the creation of a new dialog box when the Print Setup button is selected within a Print dialog box.
@@ -85,23 +84,23 @@ For more information on using `CPrintDialog`, see [Common Dialog Classes](../../
## Inheritance Hierarchy
-[CObject](../../mfc/reference/cobject-class.md)
+[`CObject`](../../mfc/reference/cobject-class.md)
-[CCmdTarget](../../mfc/reference/ccmdtarget-class.md)
+[`CCmdTarget`](../../mfc/reference/ccmdtarget-class.md)
-[CWnd](../../mfc/reference/cwnd-class.md)
+[`CWnd`](../../mfc/reference/cwnd-class.md)
-[CDialog](../../mfc/reference/cdialog-class.md)
+[`CDialog`](../../mfc/reference/cdialog-class.md)
-[CCommonDialog](../../mfc/reference/ccommondialog-class.md)
+[`CCommonDialog`](../../mfc/reference/ccommondialog-class.md)
`CPrintDialog`
## Requirements
-**Header:** afxdlgs.h
+**Header:** `afxdlgs.h`
-## CPrintDialog::CPrintDialog
+## `CPrintDialog::CPrintDialog`
Constructs either a Windows Print or Print Setup dialog object.
@@ -114,28 +113,28 @@ CPrintDialog(
### Parameters
-*bPrintSetupOnly*
-Specifies whether the standard Windows Print dialog box or Print Setup dialog box is displayed. Set this parameter to TRUE to display the standard Windows Print Setup dialog box. Set it to FALSE to display the Windows Print dialog box. If *bPrintSetupOnly* is FALSE, a Print Setup option button is still displayed in the Print dialog box.
+*`bPrintSetupOnly`*\
+Specifies whether the standard Windows Print dialog box or Print Setup dialog box is displayed. Set this parameter to `TRUE` to display the standard Windows Print Setup dialog box. Set it to `FALSE` to display the Windows Print dialog box. If *`bPrintSetupOnly`* is `FALSE`, a Print Setup option button is still displayed in the Print dialog box.
-*dwFlags*
-One or more flags you can use to customize the settings of the dialog box, combined using the bitwise OR operator. For example, the PD_ALLPAGES flag sets the default print range to all pages of the document. See the [PRINTDLG](/windows/win32/api/commdlg/ns-commdlg-printdlga) structure in the Windows SDK for more information on these flags.
+*`dwFlags`*\
+One or more flags you can use to customize the settings of the dialog box, combined using the bitwise OR operator. For example, the `PD_ALLPAGES` flag sets the default print range to all pages of the document. See the [`PRINTDLG`](/windows/win32/api/commdlg/ns-commdlg-printdlga) structure in the Windows SDK for more information on these flags.
-*pParentWnd*
+*`pParentWnd`*\
A pointer to the dialog box's parent or owner window.
### Remarks
This member function only constructs the object. Use the `DoModal` member function to display the dialog box.
-Note that when you call the constructor with *bPrintSetupOnly* set to FALSE, the PD_RETURNDC flag is automatically used. After calling `DoModal`, `GetDefaults`, or `GetPrinterDC`, a printer DC will be returned in `m_pd.hDC`. This DC must be freed with a call to [DeleteDC](/windows/win32/api/wingdi/nf-wingdi-deletedc) by the caller of `CPrintDialog`.
+Note that when you call the constructor with *`bPrintSetupOnly`* set to `FALSE`, the `PD_RETURNDC` flag is automatically used. After calling `DoModal`, `GetDefaults`, or `GetPrinterDC`, a printer DC will be returned in `m_pd.hDC`. This DC must be freed with a call to [`DeleteDC`](/windows/win32/api/wingdi/nf-wingdi-deletedc) by the caller of `CPrintDialog`.
### Example
[!code-cpp[NVC_MFCDocView#174](../../mfc/codesnippet/cpp/cprintdialog-class_1.cpp)]
-## CPrintDialog::CreatePrinterDC
+## `CPrintDialog::CreatePrinterDC`
-Creates a printer device context (DC) from the [DEVMODE](/windows/win32/api/wingdi/ns-wingdi-devmodea) and [DEVNAMES](/windows/win32/api/commdlg/ns-commdlg-devnames) structures.
+Creates a printer device context (DC) from the [`DEVMODE`](/windows/win32/api/wingdi/ns-wingdi-devmodea) and [`DEVNAMES`](/windows/win32/api/commdlg/ns-commdlg-devnames) structures.
```
HDC CreatePrinterDC();
@@ -153,7 +152,7 @@ This DC is assumed to be the current printer DC, and any other previously obtain
[!code-cpp[NVC_MFCDocView#106](../../mfc/codesnippet/cpp/cprintdialog-class_2.cpp)]
-## CPrintDialog::DoModal
+## `CPrintDialog::DoModal`
Displays the Windows common print dialog box and allows the user to select various printing options such as the number of copies, page range, and whether copies should be collated.
@@ -163,9 +162,9 @@ virtual INT_PTR DoModal();
### Return Value
-IDOK or IDCANCEL. If IDCANCEL is returned, call the Windows [CommDlgExtendedError](/windows/win32/api/commdlg/nf-commdlg-commdlgextendederror) function to determine whether an error occurred.
+`IDOK` or `IDCANCEL`. If `IDCANCEL` is returned, call the Windows [`CommDlgExtendedError`](/windows/win32/api/commdlg/nf-commdlg-commdlgextendederror) function to determine whether an error occurred.
-IDOK and IDCANCEL are constants that indicate whether the user selected the OK or Cancel button.
+`IDOK` and `IDCANCEL` are constants that indicate whether the user selected the **OK** or **Cancel** button.
### Remarks
@@ -173,13 +172,13 @@ If you want to initialize the various print dialog options by setting members of
After calling `DoModal`, you can call other member functions to retrieve the settings or information input by the user into the dialog box.
-Note that when you call the constructor with *bPrintSetupOnly* set to FALSE, the PD_RETURNDC flag is automatically used. After calling `DoModal`, `GetDefaults`, or `GetPrinterDC`, a printer DC will be returned in `m_pd.hDC`. This DC must be freed with a call to [DeleteDC](/windows/win32/api/wingdi/nf-wingdi-deletedc) by the caller of `CPrintDialog`.
+Note that when you call the constructor with *`bPrintSetupOnly`* set to `FALSE`, the `PD_RETURNDC` flag is automatically used. After calling `DoModal`, `GetDefaults`, or `GetPrinterDC`, a printer DC will be returned in `m_pd.hDC`. This DC must be freed with a call to [`DeleteDC`](/windows/win32/api/wingdi/nf-wingdi-deletedc) by the caller of `CPrintDialog`.
### Example
- See the example for [CPrintDialog::CreatePrinterDC](#createprinterdc).
+ See the example for [`CPrintDialog::CreatePrinterDC`](#createprinterdc).
-## CPrintDialog::GetCopies
+## `CPrintDialog::GetCopies`
Retrieves the number of copies requested.
@@ -197,9 +196,9 @@ Call this function after calling `DoModal` to retrieve the number of copies requ
### Example
- See the example for [CPrintDialog::PrintCollate](#printcollate).
+ See the example for [`CPrintDialog::PrintCollate`](#printcollate).
-## CPrintDialog::GetDefaults
+## `CPrintDialog::GetDefaults`
Retrieves the device defaults of the default printer without displaying a dialog box.
@@ -215,9 +214,9 @@ Nonzero if the function was successful; otherwise 0.
The retrieved values are placed in the `m_pd` structure.
-In some cases, a call to this function will call the [constructor](#cprintdialog) for `CPrintDialog` with *bPrintSetupOnly* set to FALSE. In these cases, a printer DC and `hDevNames` and `hDevMode` (two handles located in the `m_pd` data member) are automatically allocated.
+In some cases, a call to this function will call the [constructor](#cprintdialog) for `CPrintDialog` with *`bPrintSetupOnly`* set to `FALSE`. In these cases, a printer DC and `hDevNames` and `hDevMode` (two handles located in the `m_pd` data member) are automatically allocated.
-If the constructor for `CPrintDialog` was called with *bPrintSetupOnly* set to FALSE, this function will not only return `hDevNames` and `hDevMode` located in `m_pd.hDevNames` and `m_pd.hDevMode`) to the caller, but will also return a printer DC in `m_pd.hDC`. It is the responsibility of the caller to delete the printer DC and call the Windows [GlobalFree](/windows/win32/api/winbase/nf-winbase-globalfree) function on the handles when you are finished with the `CPrintDialog` object.
+If the constructor for `CPrintDialog` was called with *`bPrintSetupOnly`* set to `FALSE`, this function won't only return `hDevNames` and `hDevMode` located in `m_pd.hDevNames` and `m_pd.hDevMode`) to the caller, but will also return a printer DC in `m_pd.hDC`. It's the responsibility of the caller to delete the printer DC and call the Windows [`GlobalFree`](/windows/win32/api/winbase/nf-winbase-globalfree) function on the handles when you're finished with the `CPrintDialog` object.
### Example
@@ -225,7 +224,7 @@ This code fragment gets the default printer's device context and reports to the
[!code-cpp[NVC_MFCDocView#107](../../mfc/codesnippet/cpp/cprintdialog-class_3.cpp)]
-## CPrintDialog::GetDeviceName
+## `CPrintDialog::GetDeviceName`
Retrieves the name of the currently selected printer device.
@@ -239,15 +238,15 @@ The name of the currently selected printer.
### Remarks
-Call this function after calling [DoModal](#domodal) to retrieve the name of the currently selected printer, or after calling [GetDefaults](#getdefaults) to retrieve the current device defaults of the default printer. Use a pointer to the `CString` object returned by `GetDeviceName` as the value of `lpszDeviceName` in a call to [CDC::CreateDC](../../mfc/reference/cdc-class.md#createdc).
+Call this function after calling [`DoModal`](#domodal) to retrieve the name of the currently selected printer, or after calling [`GetDefaults`](#getdefaults) to retrieve the current device defaults of the default printer. Use a pointer to the `CString` object returned by `GetDeviceName` as the value of `lpszDeviceName` in a call to [`CDC::CreateDC`](../../mfc/reference/cdc-class.md#createdc).
### Example
-This code fragment shows the user's default printer name and the port it is connected to, along with the spooler name the printer uses. The code might show a message box that says, "Your default printer is HP LaserJet IIIP on \\\server\share using winspool.", for example.
+This code fragment shows the user's default printer name and the port it's connected to, along with the spooler name the printer uses. The code might show a message box that says, "Your default printer is HP LaserJet IIIP on \\\server\share using winspool.", for example.
[!code-cpp[NVC_MFCDocView#108](../../mfc/codesnippet/cpp/cprintdialog-class_4.cpp)]
-## CPrintDialog::GetDevMode
+## `CPrintDialog::GetDevMode`
Retrieves the `DEVMODE` structure.
@@ -257,17 +256,17 @@ LPDEVMODE GetDevMode() const;
### Return Value
-The [DEVMODE](/windows/win32/api/wingdi/ns-wingdi-devmodea) data structure, which contains information about the device initialization and environment of a print driver. You must unlock the memory taken by this structure with the Windows [GlobalUnlock](/windows/win32/api/winbase/nf-winbase-globalunlock) function, which is described in the Windows SDK.
+The [`DEVMODE`](/windows/win32/api/wingdi/ns-wingdi-devmodea) data structure, which contains information about the device initialization and environment of a print driver. You must unlock the memory taken by this structure with the Windows [`GlobalUnlock`](/windows/win32/api/winbase/nf-winbase-globalunlock) function, which is described in the Windows SDK.
### Remarks
-Call this function after calling [DoModal](#domodal) or [GetDefaults](#getdefaults) to retrieve information about the printing device.
+Call this function after calling [`DoModal`](#domodal) or [`GetDefaults`](#getdefaults) to retrieve information about the printing device.
### Example
- See the example for [CPrintDialog::PrintCollate](#printcollate).
+ See the example for [`CPrintDialog::PrintCollate`](#printcollate).
-## CPrintDialog::GetDriverName
+## `CPrintDialog::GetDriverName`
Retrieves the name of the currently selected printer driver.
@@ -281,13 +280,13 @@ A `CString` specifying the system-defined driver name.
### Remarks
-Call this function after calling [DoModal](#domodal) or [GetDefaults](#getdefaults) to retrieve the name of the system-defined printer device driver. Use a pointer to the `CString` object returned by `GetDriverName` as the value of `lpszDriverName` in a call to [CDC::CreateDC](../../mfc/reference/cdc-class.md#createdc).
+Call this function after calling [`DoModal`](#domodal) or [`GetDefaults`](#getdefaults) to retrieve the name of the system-defined printer device driver. Use a pointer to the `CString` object returned by `GetDriverName` as the value of `lpszDriverName` in a call to [`CDC::CreateDC`](../../mfc/reference/cdc-class.md#createdc).
### Example
- See the example for [CPrintDialog::GetDeviceName](#getdevicename).
+ See the example for [`CPrintDialog::GetDeviceName`](#getdevicename).
-## CPrintDialog::GetFromPage
+## `CPrintDialog::GetFromPage`
Retrieves the starting page of the print range.
@@ -305,9 +304,9 @@ Call this function after calling `DoModal` to retrieve the starting page number
### Example
- See the example for [CPrintDialog::m_pd](#m_pd).
+ See the example for [`CPrintDialog::m_pd`](#m_pd).
-## CPrintDialog::GetPortName
+## `CPrintDialog::GetPortName`
Retrieves the name of the currently selected printer port.
@@ -321,13 +320,13 @@ The name of the currently selected printer port.
### Remarks
-Call this function after calling [DoModal](#domodal) or [GetDefaults](#getdefaults) to retrieve the name of the currently selected printer port.
+Call this function after calling [`DoModal`](#domodal) or [`GetDefaults`](#getdefaults) to retrieve the name of the currently selected printer port.
### Example
See the example for [CPrintDialog::GetDeviceName](#getdevicename).
-## CPrintDialog::GetPrinterDC
+## `CPrintDialog::GetPrinterDC`
Retrieves a handle to the printer device context.
@@ -337,17 +336,17 @@ HDC GetPrinterDC() const;
### Return Value
-A handle to the printer device context if successful; otherwise NULL.
+A handle to the printer device context if successful; otherwise `NULL`.
### Remarks
-If the *bPrintSetupOnly* parameter of the `CPrintDialog` constructor was FALSE (indicating that the Print dialog box is displayed), then `GetPrinterDC` returns a handle to the printer device context. You must call the Windows [DeleteDC](/windows/win32/api/wingdi/nf-wingdi-deletedc) function to delete the device context when you are done using it.
+If the *`bPrintSetupOnly`* parameter of the `CPrintDialog` constructor was `FALSE` (indicating that the Print dialog box is displayed), then `GetPrinterDC` returns a handle to the printer device context. You must call the Windows [`DeleteDC`](/windows/win32/api/wingdi/nf-wingdi-deletedc) function to delete the device context when you're done using it.
### Example
[!code-cpp[NVC_MFCDocView#109](../../mfc/codesnippet/cpp/cprintdialog-class_5.cpp)]
-## CPrintDialog::GetToPage
+## `CPrintDialog::GetToPage`
Retrieves the ending page of the print range.
@@ -365,9 +364,9 @@ Call this function after calling `DoModal` to retrieve the ending page number in
### Example
- See the example for [CPrintDialog::m_pd](#m_pd).
+ See the example for [`CPrintDialog::m_pd`](#m_pd).
-## CPrintDialog::m_pd
+## `CPrintDialog::m_pd`
A structure whose members store the characteristics of the dialog object.
@@ -377,15 +376,15 @@ PRINTDLG& m_pd;
### Remarks
-After constructing a `CPrintDialog` object, you can use `m_pd` to set various aspects of the dialog box before calling the [DoModal](#domodal) member function. For more information on the `m_pd` structure, see [PRINTDLG](/windows/win32/api/commdlg/ns-commdlg-printdlga) in the Windows SDK.
+After constructing a `CPrintDialog` object, you can use `m_pd` to set various aspects of the dialog box before calling the [`DoModal`](#domodal) member function. For more information on the `m_pd` structure, see [`PRINTDLG`](/windows/win32/api/commdlg/ns-commdlg-printdlga) in the Windows SDK.
-If you modify the `m_pd` data member directly, you will override any default behavior.
+If you modify the `m_pd` data member directly, you'll override any default behavior.
### Example
[!code-cpp[NVC_MFCDocView#111](../../mfc/codesnippet/cpp/cprintdialog-class_6.cpp)]
-## CPrintDialog::PrintAll
+## `CPrintDialog::PrintAll`
Determines whether to print all pages of the document.
@@ -403,9 +402,9 @@ Call this function after calling `DoModal` to determine whether to print all pag
### Example
- See the example for [CPrintDialog::m_pd](#m_pd).
+ See the example for [`CPrintDialog::m_pd`](#m_pd).
-## CPrintDialog::PrintCollate
+## `CPrintDialog::PrintCollate`
Determines whether collated copies are requested.
@@ -425,7 +424,7 @@ Call this function after calling `DoModal` to determine whether the printer shou
[!code-cpp[NVC_MFCDocView#110](../../mfc/codesnippet/cpp/cprintdialog-class_7.cpp)]
-## CPrintDialog::PrintRange
+## `CPrintDialog::PrintRange`
Determines whether to print only a specified range of pages.
@@ -443,9 +442,9 @@ Call this function after calling `DoModal` to determine whether to print only a
### Example
- See the example for [CPrintDialog::m_pd](#m_pd).
+ See the example for [`CPrintDialog::m_pd`](#m_pd).
-## CPrintDialog::PrintSelection
+## `CPrintDialog::PrintSelection`
Determines whether to print only the currently selected items.
@@ -463,11 +462,11 @@ Call this function after calling `DoModal` to determine whether to print only th
### Example
- See the example for [CPrintDialog::m_pd](#m_pd).
+ See the example for [`CPrintDialog::m_pd`](#m_pd).
## See also
-[MFC Sample DIBLOOK](../../overview/visual-cpp-samples.md)
-[CCommonDialog Class](../../mfc/reference/ccommondialog-class.md)
-[Hierarchy Chart](../../mfc/hierarchy-chart.md)
-[CPrintInfo Structure](../../mfc/reference/cprintinfo-structure.md)
+[MFC Sample `DIBLOOK`](../../overview/visual-cpp-samples.md)\
+[`CCommonDialog` Class](../../mfc/reference/ccommondialog-class.md)\
+[Hierarchy Chart](../../mfc/hierarchy-chart.md)\
+[`CPrintInfo` Structure](../../mfc/reference/cprintinfo-structure.md)
diff --git a/docs/standard-library/complex-class.md b/docs/standard-library/complex-class.md
index 7df8b7f00bc..182fbf276ca 100644
--- a/docs/standard-library/complex-class.md
+++ b/docs/standard-library/complex-class.md
@@ -4,9 +4,8 @@ title: "complex Class"
ms.date: "03/27/2019"
f1_keywords: ["complex/std::complex::value_type", "complex/std::complex::imag", "complex/std::complex::real"]
helpviewer_keywords: ["std::complex [C++], value_type", "std::complex [C++], imag", "std::complex [C++], real"]
-ms.assetid: d6492e1c-5eba-4bc5-835b-2a88001a5868
---
-# complex Class
+# `complex` Class
The class template describes an object that stores two objects of type `Type`, one that represents the real part of a complex number and one that represents the imaginary part.
@@ -29,7 +28,7 @@ An object of class `Type`:
In particular, no subtle differences may exist between copy construction and default construction followed by assignment. None of the operations on objects of class `Type` may throw exceptions.
-Explicit specializations of class template complex exist for the three floating-point types. In this implementation, a value of any other type `Type` is typecast to **`double`** for actual calculations, with the **`double`** result assigned back to the stored object of type `Type`.
+Explicit specializations of class template `complex` exist for the three floating-point types. In this implementation, a value of any other type `Type` is typecast to **`double`** for actual calculations, with the **`double`** result assigned back to the stored object of type `Type`.
## Members
@@ -37,32 +36,32 @@ Explicit specializations of class template complex exist for the three floating-
|Name|Description|
|-|-|
-|[complex](#complex)|Constructs a complex number with specified real and imaginary parts or as a copy of some other complex number.|
+|[`complex`](#complex)|Constructs a complex number with specified real and imaginary parts or as a copy of some other complex number.|
### Typedefs
|Name|Description|
|-|-|
-|[value_type](#value_type)|A type that represents the data type used to represent the real and imaginary parts of a complex number.|
+|[`value_type`](#value_type)|A type that represents the data type used to represent the real and imaginary parts of a complex number.|
### Functions
|Name|Description|
|-|-|
-|[imag](#imag)|Extracts the imaginary component of a complex number.|
-|[real](#real)|Extracts the real component of a complex number.|
+|[`imag`](#imag)|Extracts the imaginary component of a complex number.|
+|[`real`](#real)|Extracts the real component of a complex number.|
### Operators
|Name|Description|
|-|-|
-|[operator*=](#op_star_eq)|Multiplies a target complex number by a factor, which may be complex or be the same type as are the real and imaginary parts of the complex number.|
-|[operator+=](#op_add_eq)|Adds a number to a target complex number, where the number added may be complex or of the same type as are the real and imaginary parts of the complex number to which it is added.|
-|[operator-=](#operator-_eq)|Subtracts a number from a target complex number, where the number subtracted may be complex or of the same type as are the real and imaginary parts of the complex number to which it is added.|
-|[operator/=](#op_div_eq)|Divides a target complex number by a divisor, which may be complex or be the same type as are the real and imaginary parts of the complex number.|
-|[operator=](#op_eq)|Assigns a number to a target complex number, where the number assigned may be complex or of the same type as are the real and imaginary parts of the complex number to which it is being assigned.|
+|[`operator*=`](#op_star_eq)|Multiplies a target complex number by a factor, which may be complex or be the same type as are the real and imaginary parts of the complex number.|
+|[`operator+=`](#op_add_eq)|Adds a number to a target complex number, where the number added may be complex or of the same type as are the real and imaginary parts of the complex number to which it's added.|
+|[`operator-=`](#operator-_eq)|Subtracts a number from a target complex number, where the number subtracted may be complex or of the same type as are the real and imaginary parts of the complex number to which it's added.|
+|[`operator/=`](#op_div_eq)|Divides a target complex number by a divisor, which may be complex or be the same type as are the real and imaginary parts of the complex number.|
+|[`operator=`](#op_eq)|Assigns a number to a target complex number, where the number assigned may be complex or of the same type as are the real and imaginary parts of the complex number to which it's being assigned.|
-## complex
+## `complex`
Constructs a complex number with specified real and imaginary parts or as a copy of some other complex number.
@@ -78,20 +77,20 @@ constexpr complex(
### Parameters
-*_RealVal*\
+*`_RealVal`*\
The value of the real part used to initialize the complex number being constructed.
-*_ImagVal*\
+*`_ImagVal`*\
The value of the imaginary part used to initialize the complex number being constructed.
-*complexNum*\
+*`complexNum`*\
The complex number whose real and imaginary parts are used to initialize the complex number being constructed.
### Remarks
-The first constructor initializes the stored real part to *\_RealVal* and the stored imaginary part to *\_Imagval*. The second constructor initializes the stored real part to `complexNum.real()` and the stored imaginary part to `complexNum.imag()`.
+The first constructor initializes the stored real part to *`_RealVal`* and the stored imaginary part to *`_Imagval`*. The second constructor initializes the stored real part to `complexNum.real()` and the stored imaginary part to `complexNum.imag()`.
-In this implementation, if a translator does not support member template functions, the template:
+In this implementation, if a translator doesn't support member template functions, the template:
```cpp
template
@@ -146,7 +145,7 @@ int main( )
}
```
-## imag
+## `imag`
Extracts the imaginary component of a complex number.
@@ -158,7 +157,7 @@ T imag(const T& right);
### Parameters
-*right*\
+*`right`*\
A complex number whose imaginary value is to be extracted.
### Return Value
@@ -200,7 +199,7 @@ The real part of c1 is c1.real() = 4.
The imaginary part of c1 is c1.imag() = 3.
```
-## operator*=
+## `operator*=`
Multiplies a target complex number by a factor, which may be complex or be the same type as are the real and imaginary parts of the complex number.
@@ -215,7 +214,7 @@ complex& operator*=(const complex& right);
### Parameters
-*right*\
+*`right`*\
A complex number or a number that is of the same type as the parameter of the target complex number.
### Return Value
@@ -285,9 +284,9 @@ int main()
}
```
-## operator+=
+## `operator+=`
-Adds a number to a target complex number, where the number added may be complex or of the same type as are the real and imaginary parts of the complex number to which it is added.
+Adds a number to a target complex number, where the number added may be complex or of the same type as are the real and imaginary parts of the complex number to which it's added.
```cpp
template
@@ -300,7 +299,7 @@ complex& operator+=(const complex& right);
### Parameters
-*right*\
+*`right`*\
A complex number or a number that is of the same type as the parameter of the target complex number.
### Return Value
@@ -388,9 +387,9 @@ The modulus of cl2 is: 5
The argument of cl2 is: 0.927295 radians, which is 53.1301 degrees.
```
-## operator-=
+## `operator-=`
-Subtracts a number from a target complex number, where the number subtracted may be complex or of the same type as are the real and imaginary parts of the complex number to which it is added.
+Subtracts a number from a target complex number, where the number subtracted may be complex or of the same type as are the real and imaginary parts of the complex number to which it's added.
```cpp
template
@@ -403,10 +402,10 @@ complex& operator-=(const complex& complexNum);
### Parameters
-*complexNum*\
+*`complexNum`*\
A complex number to be subtracted from the target complex number.
-*_RealPart*\
+*`_RealPart`*\
A real number to be subtracted from the target complex number.
### Return Value
@@ -496,7 +495,7 @@ The modulus of cl2 is: 5
The argument of cl2 is: 2.2143 radians, which is 126.87 degrees.
```
-## operator/=
+## `operator/=`
Divides a target complex number by a divisor, which may be complex or be the same type as are the real and imaginary parts of the complex number.
@@ -511,10 +510,10 @@ complex& operator/=(const complex& complexNum);
### Parameters
-*complexNum*\
+*`complexNum`*\
A complex number to be subtracted from the target complex number.
-*_RealPart*\
+*`_RealPart`*\
A real number to be subtracted from the target complex number.
### Return Value
@@ -600,9 +599,9 @@ The modulus of cl2 is: 0.6
The argument of cl2 is: 0.523599 radians, which is 30 degrees.
```
-## operator=
+## `operator=`
-Assigns a number to a target complex number, where the number assigned may be complex or of the same type as are the real and imaginary parts of the complex number to which it is being assigned.
+Assigns a number to a target complex number, where the number assigned may be complex or of the same type as are the real and imaginary parts of the complex number to which it's being assigned.
```cpp
template
@@ -613,7 +612,7 @@ complex& operator=(const Type& right);
### Parameters
-*right*\
+*`right`*\
A complex number or a number that is of the same type as the parameter of the target complex number.
### Return Value
@@ -678,9 +677,9 @@ The complex number (3, 4) assigned to the complex number cl2 is:
cl2 = (3,4)
```
-## real
+## `real`
-Gets or sets the real component of a complex number.
+Gets or sets the `real` component of a complex number.
```cpp
constexpr T real() const;
@@ -690,16 +689,16 @@ T real(const T& right);
### Parameters
-*right*\
-A complex number whose real value is to be extracted.
+*`right`*\
+A complex number whose `real` value is to be extracted.
### Return Value
-The real part of the complex number.
+The `real` part of the complex number.
### Remarks
-For a complex number *a + bi*, the real part or component is *Re(a + bi) = a*.
+For a complex number *a + bi*, the `real` part or component is *Re(a + bi) = a*.
### Example
@@ -732,7 +731,7 @@ The real part of c1 is c1.real() = 4.
The imaginary part of c1 is c1.imag() = 3.
```
-## value_type
+## `value_type`
A type that represents the data type used to represent the real and imaginary parts of a complex number.
diff --git a/docs/standard-library/utility-functions.md b/docs/standard-library/utility-functions.md
index f0db979dc44..f5ce99bc8e0 100644
--- a/docs/standard-library/utility-functions.md
+++ b/docs/standard-library/utility-functions.md
@@ -3,12 +3,11 @@ description: "Learn more about: functions"
title: " functions"
ms.date: "11/04/2016"
f1_keywords: ["utility/std::exchange", "utility/std::forward", "utility/std::make_pair", "utility/std::move", "utility/std::swap"]
-ms.assetid: b1df38cd-3a59-4098-9c81-83342eb719a4
helpviewer_keywords: ["std::exchange [C++]", "std::forward [C++]", "std::make_pair [C++]", "std::move [C++]", "std::swap [C++]"]
---
# `` functions
-## as_const
+## `as_const`
```cpp
template constexpr add_const_t& as_const(T& t) noexcept;
@@ -17,17 +16,17 @@ template void as_const(const T&&) = delete;
### Return Value
-Returns *T*.
+Returns *`T`*.
-## declval
+## `declval`
```cpp
template add_rvalue_reference_t declval() noexcept; // as unevaluated operand
```
-## exchange
+## `exchange`
-**(C++14)** Assigns a new value to an object and returns its old value.
+**`(C++14)`** Assigns a new value to an object and returns its old value.
```cpp
template
@@ -36,15 +35,15 @@ template
### Parameters
-*val*\
-The object that will receive the value of new_val.
+*`val`*\
+The object that will receive the value of `new_val`.
-*new_val*\
-The object whose value is copied or moved into val.
+*`new_val`*\
+The object whose value is copied or moved into `val`.
### Remarks
-For complex types, `exchange` avoids copying the old value when a move constructor is available, avoids copying the new value if it’s a temporary object or is moved, and accepts any type as the new value, using any available converting assignment operator. The exchange function is different from [std::swap](../standard-library/algorithm-functions.md#swap) in that the left argument isn't moved or copied to the right argument.
+For complex types, `exchange` avoids copying the old value when a move constructor is available, avoids copying the new value if it’s a temporary object or is moved, and accepts any type as the new value, using any available converting assignment operator. The exchange function is different from [`std::swap`](../standard-library/algorithm-functions.md#swap) in that the left argument isn't moved or copied to the right argument.
### Example
@@ -80,7 +79,7 @@ The old value of c1 is: 1
The new value of c1 after exchange is: 2
```
-## forward
+## `forward`
Conditionally casts its argument to an rvalue reference if the argument is an rvalue or rvalue reference. This restores the rvalue-ness of an argument to the forwarding function in support of perfect forwarding.
@@ -94,15 +93,15 @@ template // accepts everything else
### Parameters
-*Type*\
-The type of the value passed in *Arg*, which might be different than the type of *Arg*. Typically determined by a template argument of the forwarding function.
+*`Type`*\
+The type of the value passed in *`Arg`*, which might be different than the type of *`Arg`*. Typically determined by a template argument of the forwarding function.
-*Arg*\
+*`Arg`*\
The argument to cast.
### Return Value
-Returns an rvalue reference to *Arg* if the value passed in *Arg* was originally an rvalue or a reference to an rvalue; otherwise, returns *Arg* without modifying its type.
+Returns an rvalue reference to *`Arg`* if the value passed in *`Arg`* was originally an rvalue or a reference to an rvalue; otherwise, returns *`Arg`* without modifying its type.
### Remarks
@@ -124,7 +123,7 @@ from_chars_result from_chars(const char* first, const char* last, double& value,
from_chars_result from_chars(const char* first, const char* last, long double& value, chars_format fmt = chars_format::general);
```
-## get
+## `get`
Gets an element from a `pair` object by index position, or by type.
@@ -171,25 +170,25 @@ template
### Parameters
-*Index*\
+*`Index`*\
The 0-based index of the chosen element.
-*T1*\
+*`T1`*\
The type of the first pair element.
-*T2*\
+*`T2`*\
The type of the second pair element.
-*pr*\
+*`pr`*\
The pair to select from.
### Remarks
The template functions each return a reference to an element of its `pair` argument.
-For the indexed overloads, if the value of *Index* is 0 the functions return `pr.first` and if the value of *Index* is 1 the functions return `pr.second`. The type `RI` is the type of the returned element.
+For the indexed overloads, if the value of *`Index`* is 0 the functions return `pr.first` and if the value of *`Index`* is 1 the functions return `pr.second`. The type `RI` is the type of the returned element.
-For the overloads that don't have an Index parameter, the element to return is deduced by the type argument. Calling `get(Tuple)` will produce a compiler error if *pr* contains more or less than one element of type T.
+For the overloads that don't have an `Index` parameter, the element to return is deduced by the type argument. Calling `get(Tuple)` will produce a compiler error if *`pr`* contains more or less than one element of type `T`.
### Example
@@ -220,35 +219,35 @@ int main()
1 0.27
```
-## index_sequence
+## `index_sequence`
```cpp
template
using index_sequence = integer_sequence;
```
-## index_sequence_for
+## `index_sequence_for`
```cpp
template
using index_sequence_for = make_index_sequence;
```
-## make_index_sequence
+## `make_index_sequence`
```cpp
template
using make_index_sequence = make_integer_sequence;
```
-## make_integer_sequence
+## `make_integer_sequence`
```cpp
template
using make_integer_sequence = integer_sequence;
```
-## make_pair
+## `make_pair`
A template function that you can use to construct objects of type `pair`, where the component types are automatically chosen based on the data types that are passed as parameters.
@@ -268,10 +267,10 @@ template
### Parameters
-*Val1*\
+*`Val1`*\
Value that initializes the first element of `pair`.
-*Val2*\
+*`Val2`*\
Value that initializes the second element of `pair`.
### Return Value
@@ -280,13 +279,13 @@ The pair object that's constructed: `pair`<`T`,`U`>(`Val1`, `Val2`).
### Remarks
-`make_pair` converts object of type [reference_wrapper Class](../standard-library/reference-wrapper-class.md) to reference types and converts decaying arrays and functions to pointers.
+`make_pair` converts object of type [`reference_wrapper` Class](../standard-library/reference-wrapper-class.md) to reference types and converts decaying arrays and functions to pointers.
In the returned `pair` object, `T` is determined as follows:
- If the input type `T` is `reference_wrapper`, the returned type `T` is `X&`.
-- Otherwise, the returned type `T` is `decay::type`. If [decay Class](../standard-library/decay-class.md) isn't supported, the returned type `T` is the same as the input type `T`.
+- Otherwise, the returned type `T` is `decay::type`. If [`decay` Class](../standard-library/decay-class.md) isn't supported, the returned type `T` is the same as the input type `T`.
The returned type `U` is similarly determined from the input type `U`.
@@ -296,9 +295,9 @@ The `make_pair` helper function also makes it possible to pass two values to a f
### Example
-For an example about how to use the helper function `make_pair` to declare and initialize a pair, see [pair Structure](../standard-library/pair-structure.md).
+For an example about how to use the helper function `make_pair` to declare and initialize a pair, see [`pair` Structure](../standard-library/pair-structure.md).
-## move
+## `move`
Unconditionally casts its argument to an rvalue reference, and thereby signals that it can be moved if its type is move-enabled.
@@ -309,11 +308,11 @@ template
### Parameters
-*Type*\
-A type deduced from the type of the argument passed in *Arg*, together with the reference collapsing rules.
+*`Type`*\
+A type deduced from the type of the argument passed in *`Arg`*, together with the reference collapsing rules.
-*Arg*\
-The argument to cast. Although the type of *Arg* appears to be specified as an rvalue reference, `move` also accepts lvalue arguments because lvalue references can bind to rvalue references.
+*`Arg`*\
+The argument to cast. Although the type of *`Arg`* appears to be specified as an rvalue reference, `move` also accepts lvalue arguments because lvalue references can bind to rvalue references.
### Return Value
@@ -321,21 +320,21 @@ The argument to cast. Although the type of *Arg* appears to be specified as an r
### Remarks
-The template argument *Type* isn't intended to be specified explicitly, but to be deduced from the type of the value passed in *Arg*. The type of *Type* is further adjusted according to the reference collapsing rules.
+The template argument *`Type`* isn't intended to be specified explicitly, but to be deduced from the type of the value passed in *`Arg`*. The type of *`Type`* is further adjusted according to the reference collapsing rules.
-`move` doesn't move its argument. Instead, by unconditionally casting its argument—which might be an lvalue—to an rvalue reference, it enables the compiler to subsequently move, rather than copy, the value passed in *Arg* if its type is move-enabled. If its type isn't move-enabled, it's copied instead.
+`move` doesn't move its argument. Instead, by unconditionally casting its argument—which might be an lvalue—to an rvalue reference, it enables the compiler to subsequently move, rather than copy, the value passed in *`Arg`* if its type is move-enabled. If its type isn't move-enabled, it's copied instead.
-If the value passed in *Arg* is an lvalue—that is, it has a name or its address can be taken—it's invalidated when the move occurs. Don't refer to the value passed in *Arg* by its name or address after it's been moved.
+If the value passed in *`Arg`* is an lvalue—that is, it has a name or its address can be taken—it's invalidated when the move occurs. Don't refer to the value passed in *`Arg`* by its name or address after it's been moved.
-## move_if_noexcept
+## `move_if_noexcept`
```cpp
template constexpr conditional_t< !is_nothrow_move_constructible_v && is_copy_constructible_v, const T&, T&&> move_if_noexcept(T& x) noexcept;
```
-## swap
+## `swap`
-Exchanges the elements of two type or [pair Structure](../standard-library/pair-structure.md) objects.
+Exchanges the elements of two type or [`pair` Structure](../standard-library/pair-structure.md) objects.
```cpp
template
@@ -348,17 +347,17 @@ template
### Parameters
-*left*\
+*`left`*\
An object of type or type `pair`.
-*right*\
+*`right`*\
An object of type or type `pair`.
### Remarks
One advantage of `swap` is that the types of objects that are being stored are determined automatically by the compiler and don't have to be explicitly specified. Don't use explicit template arguments such as `swap(1, 2)` when you use `swap` because it's verbose and adds complex rvalue reference problems that might cause compilation failure.
-## to_chars
+## `to_chars`
```cpp
to_chars_result to_chars(char* first, char* last, see below value, int base = 10);