如果使用 'Visual Studio 2017 (v141)' 平台工具集构建应用程序,CCheckListBox 项目会在选择时重叠

CCheckListBox items get overlapped on selection if app build using 'Visual Studio 2017 (v141)' Platform Toolset

目前正在尝试将 CCheckListBox 控件用于项目中。 该项目是一个简单的基于 MFC 对话框的应用程序。 在对话框中添加了具有以下特定 属性.

的列表框控件
 Owner Draw -> Fixed
 Selection -> Multiple
 Has String -> True

使用 Class 向导

将以下变量添加到 header
CCheckListBox mCheckListBox;

将以下项目添加到源文件中。

mCheckListBox.AddString(L"Item-1");
mCheckListBox.AddString(L"Item-2");
mCheckListBox.AddString(L"Item-3");
mCheckListBox.AddString(L"Item-4");

使用 Platform Toolset 'Visual Studio 2012 (v110)' 构建应用程序后,该应用程序可以正常运行。 但是,如果使用 Platform Toolset 'Visual Studio 2017 (v141)' 构建应用程序,列表项会在选择时重叠。

如果有人遇到同样的问题,请分享解决方案。 将不胜感激。

注意: 如果有相同的问题,请分享 link.

这是另一个 MFC 错误。

您可以通过在 OnInitDialog 方法的某处添加此代码来避免此错误:

mCheckListBox.SetFont(GetFont());