【发布时间】:2016-03-30 05:50:09
【问题描述】:
我有两个列表控件,它们都可以分别垂直滚动。
但是我想同步滚动也想隐藏列表控件 1 中的垂直滚动条。
另一方面,如果您垂直滚动列表 control-2,则列表 control-1 应自动向下滚动相同数量的项目,这样两个列表框上的选项应始终显示在同一行中.
如何在 MFC 中实现这一点?
【问题讨论】:
-
对于同步,您可以使用
CListBox::SetTopIndex和CListBox::SetTopIndex。将滚动条隐藏在具有比显示更多项目的列表框中是另一回事,我不确定这是否可能。您可以尝试所有者绘制列表控件,然后您可以完全控制列表控件 1 中显示的内容,但这需要一些工作。 -
更正:您可以通过将列表框的“垂直滚动条”属性设置为False来移除垂直滚动条。
-
@MichaelWalz 感谢您的回复。是否可以冻结(修复)列表控件的第一列?我的意思是与 Excel 中的冻结列相同。
-
不太清楚你所说的第一列是什么意思,我以为你有两个列表控件。也许你应该编辑你的问题,更清楚你到底想要什么。
-
对不起,我误读了您的问题,以为您在谈论列表框而不是列表控件。看看this SO question。
标签: visual-c++ mfc listcontrol