c++ - CListCtrl 类不推荐使用的函数 - 可以使用哪些替代函数
问题描述
根据微软文档
https://docs.microsoft.com/fi-fi/cpp/mfc/deprecated-ansi-apis?view=vs-2017
这些是已经折旧的功能列表。我正在使用 MFC CListCtrl 类,并且这个类中有很多函数已经被贬值了。CListCtrl 类弃用函数列表如下
AFX_ANSI_DEPRECATED void CancelEditLabel();
AFX_ANSI_DEPRECATED int EnableGroupView(BOOL fEnable);
AFX_ANSI_DEPRECATED int GetGroupInfo(int iGroupId,
PLVGROUP pgrp) const;
AFX_ANSI_DEPRECATED void GetGroupMetrics(PLVGROUPMETRICS pGroupMetrics) const;
AFX_ANSI_DEPRECATED BOOL GetInsertMark(LPLVINSERTMARK lvim) const;
AFX_ANSI_DEPRECATED COLORREF GetInsertMarkColor() const;
AFX_ANSI_DEPRECATED int GetInsertMarkRect(LPRECT pRect) const;
AFX_ANSI_DEPRECATED COLORREF GetOutlineColor() const;
AFX_ANSI_DEPRECATED UINT GetSelectedColumn() const;
AFX_ANSI_DEPRECATED BOOL GetTileInfo(PLVTILEINFO pti) const;
AFX_ANSI_DEPRECATED BOOL GetTileViewInfo(PLVTILEVIEWINFO ptvi) const;
AFX_ANSI_DEPRECATED DWORD GetView() const;
AFX_ANSI_DEPRECATED BOOL HasGroup(int iGroupId) const;
AFX_ANSI_DEPRECATED int InsertGroup(int index,
PLVGROUP pgrp);
AFX_ANSI_DEPRECATED void InsertGroupSorted(PLVINSERTGROUPSORTED pStructInsert);
AFX_ANSI_DEPRECATED int InsertMarkHitTest(LPPOINT pPoint,
LPLVINSERTMARK lvim) const;
AFX_ANSI_DEPRECATED BOOL IsGroupViewEnabled() const;
AFX_ANSI_DEPRECATED void MoveGroup(int iGroupId,
int toIndex);
AFX_ANSI_DEPRECATED void MoveItemToGroup(int idItemFrom,
int idGroupTo);
AFX_ANSI_DEPRECATED void RemoveAllGroups();
AFX_ANSI_DEPRECATED int RemoveGroup(int iGroupId);
AFX_ANSI_DEPRECATED BOOL SetGroupInfo(int iGroupId,
PLVGROUP pGroup);
AFX_ANSI_DEPRECATED void SetGroupMetrics(PLVGROUPMETRICS pGroupMetrics);
AFX_ANSI_DEPRECATED BOOL SetInfoTip(PLVSETINFOTIP plvInfoTip);
AFX_ANSI_DEPRECATED BOOL SetInsertMark(LPLVINSERTMARK lvim);
AFX_ANSI_DEPRECATED COLORREF SetInsertMarkColor(COLORREF color);
AFX_ANSI_DEPRECATED COLORREF SetOutlineColor(COLORREF color);
AFX_ANSI_DEPRECATED void SetSelectedColumn(int iCol);
AFX_ANSI_DEPRECATED BOOL SetTileInfo(PLVTILEINFO pti);
AFX_ANSI_DEPRECATED BOOL SetTileViewInfo(PLVTILEVIEWINFO ptvi);
AFX_ANSI_DEPRECATED DWORD SetView(int iView);
AFX_ANSI_DEPRECATED BOOL SortGroups(PFNLVGROUPCOMPARE _pfnGroupCompare,
LPVOID _plv);
我专门使用UINT GetSelectedColumn() const函数,因此受到影响。
有人可以推荐使用上述功能而不是我可以使用的任何替代功能吗?或者我可以采取任何其他方法来解决问题。如果有任何示例代码,您可以推荐来解决这个问题。仅供参考,我使用的是 Windows 10 版本操作系统和 VS2015。
如果有人能尽早提出一些意见,我将不胜感激。
非常感谢 - 严
解决方案
从 Microsoft Docs 页面“已弃用的 ANSI API ”:
Microsoft 基础类 (MFC) 库正在向基于 Unicode 字符集的类和方法迁移。因此,不推荐使用几种 MFC 方法的 ANSI 版本。在您未来的应用程序中使用这些方法的 Unicode 版本。
为Unicode编译您的应用程序以消除警告。
项目属性 > 常规 > 字符集:“使用 Unicode 字符集”
推荐阅读
- laravel - Q-Uploader Quasar Framework 无法上传图片
- spring-boot - Spring Security 未获取 PostMan 客户端授权参数
- python - Python中XML中的父节点插入不像我希望的那样工作
- c++ - 为什么 char 在 C++ 中不被视为数字?
- jenkins - 动态参数值取决于 Jenkins 代理标签
- python-3.x - Python 3.6:“c”参数看起来像单个数字 RGB 或 RGBA 序列
- c++ - C++ QT Creator 为 QTextEdit::verticalSlideBar 创建槽函数?
- android - TransactionTooLargeException when selecting many files using ACTION_GET_CONTENT intent
- python-3.x - I am trying to create a program with class called Product, and the object returns the discount of the price for the number of items purchased
- javascript - How do I return a specific data from object