以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  ListView 文字大小 如何控制  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94067)

--  作者:凡夫俗子
--  发布时间:2016/12/14 17:05:00
--  ListView 文字大小 如何控制
Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
lvw.StopRedraw() \'暂停绘制
lvw.Rows.Clear() \'清除原来的行
lvw.Images.Clear() \'清除原来的图片
lvw.View = ViewMode.Tile \'显示模式为 大图标
lvw.Images.LargeSize = New Size(200,200) \'定义大图标尺寸
lvw.TitleSize = New Size(400,200)
Dim cls() As String = {"模具编号","模具名称","模号","库位","当前状态","更新日期"} \'定义列名 
For i As Integer = 0 To  cls.Length - 1  \'增加列 
    Dim c As WinForm.ListViewColumn = lvw.Columns.Add() 
    c.Name = cls(i) \'指定列名 
Next
For Each dr As DataRow In DataTables("模具").DataRows \'从数据表中提取数据 
    Dim Key As String = dr("模具图片") \'获取此员工的照片文件
    lvw.Images.AddLargeImage(Key, Key) \'添加照片,直接用文件名作为图片键值
    Dim vr As  WinForm.ListViewRow =  lvw.Rows.Add() \'增加一行
    vr.ToolTipText = dr("当前状态")
    vr.ImageKey = Key \'设置图片键值
    For Each cl As String In cls \'逐列取值
        vr(cl) = dr(cl)
    Next
Next
lvw.ResumeRedraw() \'恢复绘制


这里显示的 "模具编号","模具名称","模号","库位","当前状态","更新日期" 都是默认文字大小,如何加大字号,进行字符格式设置

--  作者:凡夫俗子
--  发布时间:2016/12/14 17:11:00
--  
vr.Font = New Font("微软雅黑",8)  字体可以这样控制,行距如何调整呢
--  作者:有点蓝
--  发布时间:2016/12/14 17:30:00
--  
高度设置SmallSize 的高度

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
lvw.Images.SmallSize  = New Size(1,50)

--  作者:凡夫俗子
--  发布时间:2016/12/15 11:06:00
--  
经测试这个参数 不能控制 行距

比如我有五行文字 vr.Font = New Font("微软雅黑",15) 
则文字大小是变了,但行间距没有变,都挤在一起了

--  作者:有点色
--  发布时间:2016/12/15 11:34:00
--  

 你只能设置整体的字体,如

 

lvw.font = new font("宋体", 18)


--  作者:有点蓝
--  发布时间:2016/12/15 12:09:00
--  
3楼的方式我测试没有问题


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看


--  作者:凡夫俗子
--  发布时间:2016/12/15 12:16:00
--  
设置整体 的字体是可以的


那么ListView1 的当前行 比如 某一个字段 值发生了改变 要在ListView1 里面更新一下本行 如何 弄,不需要全部更新

--  作者:有点色
--  发布时间:2016/12/15 14:42:00
--  

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=94102&skin=0