CListCtrl,LVS_LIST样式如何添加竖直滚动条? ContactList.Create( LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_LIST,CRect(4,4,200,450),this,2);我现在的这个样式,当列表满了以后之后的数据加在第2列了,出现水平滚动条。我想让他变成就1列,竖直上下滚动的,给用什么样式? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你运行过了,然后不行?还是你自认为不行?我在Report模式下,用这个是可以出现竖直滚动条的List下没试过,我试下先 刚试了下,在list模式下还真不行... 又看了下资料,LVS_ALIGNLEFT和LVS_ALIGNTOP只对图表和小图标模式,还有Report模式有效对LVS_LIST模式,没有效果....http://hi.baidu.com/blackscreen/blog/item/85fdc966c834082eab184c48.html ::SetWindowLong(m_list.GetSafeHwnd(),GWL_STYLE,WS_CHILD|WS_VISIBLE| WS_HSCROLL); 你要是用垂直滚动的话,ContactList.Create( LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SMALLICON|LVS_ALIGNTOP,CRect(4,4,200,450),this,2);这样创建就完全实现你的要求了!!! 忽然发现个问题,6楼的虽然可以实现竖直滚动条,但是这个时候,list的显示效果已经不是list类型,而是icon类型的了应该和楼主要的list效果不一样 摸索了一段时间,终于找到方法了DWORD dwStyle=::GetWindowLong(GetListCtrl().GetSafeHwnd(),GWL_STYLE)&WS_HSCROLL;::SetWindowLong(GetListCtrl().GetSafeHwnd(),GWL_STYLE,dwStyle|WS_CHILE|WS_VISIBLE|WS_VSCROLL);因为SetWindowLong会覆盖原来的风格,所以先获取原来的风格 并去掉横向滚动,然后再加上需要的风格即可 我试了下,有问题的首先就是,他也是将ListCtrl转化成了Icon模式另外,执行这2句代码,虽然是可以像竖直滚动条一样,用鼠标向下滑动,但是滚动条本身是没有显示的不如一句 ::SetWindowLong(m_list.GetSafeHwnd(),GWL_STYLE, WS_CHILD | WS_VISIBLE |WS_HSCROLL);来的实在 关于从DLL加载图片资源的问题 如何不让单文档每次启动时恢复上一次的窗口布局?? 我建一个对话框类CMyDlg,在CMyDlg怎样去访问CMainFrame类中的一个m_test全局成员变量? 关于ATL组件用web方式调用,我遇到一个小问题,请帮忙指点一下 截取键盘输入后的三个疑问? 有谁有GLView4.3的源代码 请问怎样才能让explorer.exe以shell方式运行? 巨菜的问题! 一个构造函数的问题,各位帮帮忙 带资源的MFC扩展DLL如何在应用程序中使用? 怎样让对话框只能在指定位置拖动? 请问如何在EVC中使用IE控件
还是你自认为不行?
我在Report模式下,用这个是可以出现竖直滚动条的
List下没试过,我试下先
对LVS_LIST模式,没有效果....
http://hi.baidu.com/blackscreen/blog/item/85fdc966c834082eab184c48.html
::SetWindowLong(m_list.GetSafeHwnd(),GWL_STYLE,WS_CHILD|WS_VISIBLE| WS_HSCROLL);
这样创建就完全实现你的要求了!!!
应该和楼主要的list效果不一样
::SetWindowLong(GetListCtrl().GetSafeHwnd(),GWL_STYLE,dwStyle|WS_CHILE|WS_VISIBLE|WS_VSCROLL);
因为SetWindowLong会覆盖原来的风格,所以先获取原来的风格 并去掉横向滚动,然后再加上需要的风格即可
首先就是,他也是将ListCtrl转化成了Icon模式
另外,执行这2句代码,虽然是可以像竖直滚动条一样,用鼠标向下滑动,但是滚动条本身是没有显示的
不如一句 ::SetWindowLong(m_list.GetSafeHwnd(),GWL_STYLE, WS_CHILD | WS_VISIBLE |WS_HSCROLL);
来的实在