热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

listView项的距离能否调整

在listVied中。项的距离离得太远了。。。我要让他们连在一起都没办法。请问有什么方法可以将listView的距离拉近。是里面的项拉近!
在listVied 中 。 项的 距离 离得太远了 。 。。   我要让他们连在一起都没办法。
    请问有什么方法可以将listView 的距离拉近 。
  是里面的项拉近 !

23 个解决方案

#1


ListView默认以项字体高度为行高,其次判断有无图标,如果图标高度大于字体高度,则以图标高度为准.
你可以做一个透明的图标,设置为每行项的图标,比如这个图标高度是20,那么行高就是20.
如果不希望因为放入一个图标而使得行看起来文字缩进的,可以做成宽1高20的图标.这个图标可以动态生成:
dim ItmIcon as new bitmap(1,20)
ImageList1.Images.Add(ItmIcon)

#2


引用 1 楼 dylike 的回复:
ListView默认以项字体高度为行高,其次判断有无图标,如果图标高度大于字体高度,则以图标高度为准.
你可以做一个透明的图标,设置为每行项的图标,比如这个图标高度是20,那么行高就是20.
如果不希望因为放入一个图标而使得行看起来文字缩进的,可以做成宽1高20的图标.这个图标可以动态生成:
dim ItmIcon as new bitmap(1,20)
ImageList1.Images……


  看不懂什么意思 。。
     能给点代码么  。。     加上注释。
  拜托了 。  急用 。在线等 。

#3


这是我做了后的效果 。 。   


  图片离得太远了 。 。  
  求高手帮忙解决  

#4


如果是大图标模式,则需要在windows下操作:
桌面空白处=>右键=>属性=>设置桌面图标间距.

#5


引用 4 楼 dylike 的回复:
如果是大图标模式,则需要在windows下操作:
桌面空白处=>右键=>属性=>设置桌面图标间距.



桌面图标间距  ??    。。   没见过 。。
    没有别的办法吗?

#6


哪个好心人帮我看 。 。  在线等啊 。 。

#7


我的建议是:使用Button或Picturebox等控件通过代码来布局,而不是依赖LV.这样会更自由些.

#8


你一行里面的两张图片是在同一个单元格里还是两个单元格里?

#9


引用 8 楼 ghost281536992 的回复:
你一行里面的两张图片是在同一个单元格里还是两个单元格里?

两个单元格 。。

#10


引用 8 楼 ghost281536992 的回复:
你一行里面的两张图片是在同一个单元格里还是两个单元格里?

 如何调单元格的大小 ??

#11


同问。学习

#12


有没高手教教啊 。 。。   就快上学了哎 。 。   快点帮我  。。  

#13


listview这个控件有个毛病,就是大小不能随意调,你要是想随意调,那就只能绑定一个imagelist,然后通过调整imagelist里面的image的size来调整项的大小。
listview有两个属性,一个是smallimagelist,一个是largeimagelist,在属性列表里能找到,随便绑定哪个都行。分别对应view属性的largeicon跟smallicon。绑定以后item的大小就是你设置的图片的大小。

#14


引用 13 楼 ghost281536992 的回复:
listview这个控件有个毛病,就是大小不能随意调,你要是想随意调,那就只能绑定一个imagelist,然后通过调整imagelist里面的image的size来调整项的大小。
listview有两个属性,一个是smallimagelist,一个是largeimagelist,在属性列表里能找到,随便绑定哪个都行。分别对应view属性的largeicon跟smallicon。绑定以后item的……

  这个我试过 。  但是效果还是一样 。  没有更好的办法吗?  我曾见过有人试着改过 。   但我不知道怎么用。
    给你看下代码  
/// 
        /// 控制ListView项之间的距离
        /// 

        /// 
        /// 
        /// 水平间距
        /// 垂直间距
        /// 
        [DllImport("User32.dll")]
        private static extern int SendMessage(int Handle, int wMsg, int wParam, int lParam);

        const int LVM_FIRST = 0x1000;
        const int LVM_SETICONSPACING = LVM_FIRST + 53;

        public static void SetListViewSpacing(ListView lst, int x, int y)
        {
            SendMessage(lst.Handle.ToInt32(), LVM_SETICONSPACING, 0, x * 65536 + y);
        }

#15


实在不行就protected override void OnDrawItem(DrawListViewItemEventArgs e)吧。
自己画item算了。

#16


引用 14 楼 md5cheng 的回复:
引用 13 楼 ghost281536992 的回复:
listview这个控件有个毛病,就是大小不能随意调,你要是想随意调,那就只能绑定一个imagelist,然后通过调整imagelist里面的image的size来调整项的大小。
listview有两个属性,一个是smallimagelist,一个是largeimagelist,在属性列表里能找到,随便绑定哪个都行。分别对应view属性的……

   这个有没有用呢?   
      有用的话,  要怎么用呢 。。  不是很懂

#17


引用 16 楼 md5cheng 的回复:
引用 14 楼 md5cheng 的回复:
引用 13 楼 ghost281536992 的回复:
listview这个控件有个毛病,就是大小不能随意调,你要是想随意调,那就只能绑定一个imagelist,然后通过调整imagelist里面的image的size来调整项的大小。
listview有两个属性,一个是smallimagelist,一个是largeimagelist,在属性列表里能……


不一定有用,这种方法好像只用于设置行高。你试下吧。
先往窗口里拖个imagelist控件,然后将listview的imagelist指向它。然后把你要的图片加到imagelist里。然后把listviewitem的imageindex(就是你想要选的图片在imagelist里的索引)设置下,但是subitem的图标好像是需要重绘的,我没有实际应用经历,但是跟你这个类似,当时是重写了,因为listview的第二列默认是没有图标的。
protected override void OnDrawItem(DrawListViewItemEventArgs e),用这个。
网上也有带图标的listview控件,别人自己做的,你下一个来改改也可以。

#18


http://www.codesoso.com/code/Image-ListView-SubItem.aspx
这是别人写的一个listview,要实现你那样的效果还要再自己小改一下。

#19


 我不会重绘 。 。   还没学到 。 。   能教我吗 。。  
    谢谢你帮了我这么多 。 。 

#20


这个。。。。。。教字从何谈起,大家一起讨论罢了,都是菜鸟,呵呵
只能是有了问题大家一起想办法解决,从头到尾教不太现实。
实际上listview绘制的时候就用到了Ondrawitem这个事件。只不过你现在为了实现自己想要的功能把这个函数加强了一下而已。
你找listview这个类的元数据。东西都在里面。
    public class ExListview : ListView
    {
        public void Exlistview()
        {
        }

        protected override void OnDrawItem(DrawListViewItemEventArgs e)
        {
            base.OnDrawItem(e);
            把重绘的代码写到这个里面

        }
    }

#21


引用 20 楼 ghost281536992 的回复:
这个。。。。。。教字从何谈起,大家一起讨论罢了,都是菜鸟,呵呵
只能是有了问题大家一起想办法解决,从头到尾教不太现实。
实际上listview绘制的时候就用到了Ondrawitem这个事件。只不过你现在为了实现自己想要的功能把这个函数加强了一下而已。
你找listview这个类的元数据。东西都在里面。
  public class ExListview : ListView
  {
 ……


谢谢你。。  我中午去学校解决了这事情了。。

这个可以用
// 
        /// 控制ListView项之间的距离
        /// 

        /// 
        /// 
        /// 水平间距
        /// 垂直间距
        /// 
        [DllImport("User32.dll")]
        private static extern int SendMessage(int Handle, int wMsg, int wParam, int lParam);

        const int LVM_FIRST = 0x1000;
        const int LVM_SETICONSPACING = LVM_FIRST + 53;

        public static void SetListViewSpacing(ListView lst, int x, int y)
        {
            SendMessage(lst.Handle.ToInt32(), LVM_SETICONSPACING, 0, x * 65536 + y);
        }
 

但要改下 

#22


楼主 ,请问怎么改改呢,现在我也要用这个知识点 谢谢了

#23


太棒了,终于解决问题了,楼主在21楼给的代码确实能用。拷贝后调用方法就行。

推荐阅读
  • 使用Python构建网页版图像编辑器
    本文详细介绍了一款基于Python开发的网页版图像编辑工具,具备多种图像处理功能,如黑白转换、铅笔素描效果等。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • Hadoop MapReduce 实战案例:手机流量使用统计分析
    本文通过一个具体的Hadoop MapReduce案例,详细介绍了如何利用MapReduce框架来统计和分析手机用户的流量使用情况,包括上行和下行流量的计算以及总流量的汇总。 ... [详细]
  • 本文详细介绍了如何使用C#实现不同类型的系统服务账户(如Windows服务、计划任务和IIS应用池)的密码重置方法。 ... [详细]
  • Python3爬虫入门:pyspider的基本使用[python爬虫入门]
    Python学习网有大量免费的Python入门教程,欢迎大家来学习。本文主要通过爬取去哪儿网的旅游攻略来给大家介绍pyspid ... [详细]
  • Android 中的布局方式之线性布局
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文深入探讨了WPF框架下的数据验证机制,包括内置验证规则的使用、自定义验证规则的实现方法、错误信息的有效展示策略以及验证时机的选择,旨在帮助开发者构建更加健壮和用户友好的应用程序。 ... [详细]
  • 本文详细探讨了在Java中如何将图像对象转换为文件和字节数组(Byte[])的技术。虽然网络上存在大量相关资料,但实际操作时仍需注意细节。本文通过使用JMSL 4.0库中的图表对象作为示例,提供了一种实用的方法。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • iOS如何实现手势
    这篇文章主要为大家展示了“iOS如何实现手势”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“iOS ... [详细]
  • 视觉Transformer综述
    本文综述了视觉Transformer在计算机视觉领域的应用,从原始Transformer出发,详细介绍了其在图像分类、目标检测和图像分割等任务中的最新进展。文章不仅涵盖了基础的Transformer架构,还深入探讨了各类增强版Transformer模型的设计思路和技术细节。 ... [详细]
  • D17:C#设计模式之十六观察者模式(Observer Pattern)【行为型】
    一、引言今天是2017年11月份的最后一天,也就是2017年11月30日,利用今天再写一个模式,争取下个月(也就是12月份& ... [详细]
  • 本文详细探讨了 TensorFlow 中 `tf.identity` 函数的作用及其应用场景,通过对比直接赋值与使用 `tf.identity` 的差异,帮助读者更好地理解和运用这一函数。 ... [详细]
  • 深入解析C语言中的关键字及其分类
    本文将全面介绍C语言中的关键字,并按照功能将其分为数据类型关键字、控制结构关键字、存储类别关键字和其他关键字四大类,旨在帮助读者更好地理解和运用这些基本元素。C语言中共有32个关键字。 ... [详细]
  • 深入探讨:React中的方法绑定技巧与性能考量
    本文详细介绍了在React应用中绑定方法的三种常见方式及其对性能的影响,包括在JSX中使用箭头函数、在构造函数中绑定this以及将类方法定义为箭头函数的方法。 ... [详细]
author-avatar
手机用户2502939977
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有