用于显示表格的控件

和 YFList 、List 控件类似,它们只是没列,只有行,而这个增加了 列,它们是1维表格,那么这个控件就是二维表格。
控件属性和用法基本上一样。
使用方法
和其它列表一样用法,就添加列表数据,这样就成为 1维的列表
YFtable1.AddItem("行文字1" )
YFtable1.AddItem("行文字2" )
YFtable1.AddItem("行文字3" )
支持图标
- 矢量图标
添加矢量图标
Redim YFList1.vico(2)
YFList1.vico(1)="f00101UU.7UL[YZL`Y^B`UcP[_]iVVZ[VlUL[Y+c200Z^YnV_V_" '矢量图标字符串
YFList1.vico(2)="a.42TP.7[sWraiWrai^F+a*6WKZPWK`n]C`n+b01TP00?T_T_Z[YF+b*6\t^QZ[YD" '矢量图标字符串
添加数据,带矢量图标索引
YFtable1.AddItem("行文字1",1 )
YFtable1.AddItem("行文字2",2 )
- 字体图标
先要在起始代码区加载字体
字体文件在资源中
Dim ss As String = GetResourceStr("FONT_ICONFONT")
Dim As Long uu
Dim ff As Any Ptr = AddFontMemResourceEx(StrPtr(ss), Len(ss), 0, @uu)
字体文件是一个文件
Dim sst As String = App.Path & "iconfont.ttf"
Dim As Long uu = AddFontResourceExA(StrPtr(sst) ,FR_PRIVATE ,0)
添加数据,带字体中的字符值
YFtable1.AddItem("行文字1",&HE655)
YFtable1.AddItem("行文字2",&HE651 )
- 图标文件
Dim H As HICON = LoadIcon(NULL, IDI_ERROR) ‘加载图标,不可以立即释放,等控件不显示了,必须释放
YFtable1.AddItem("行文字2", Cast(Integer, H))
其它颜色设置(注意:是否选中,需要先设计属性显示复选框才有显示效果)
YFtable1.AddItem("行文字1",字体图标,用户自定义数据,图标颜色,文字颜色,是否选中,背景颜色)
多列数据增加
每列用 chr(1) 分割
YFtable1.AddItem("1行1列文字" & chr(1) & "1行2列文字" & chr(1) & "1行3列文字" )
YFtable1.AddItem("2行1列文字" & chr(1) & "2行2列文字" & chr(1) & "2行3列文字" )
YFtable1.AddItem("2行1列文字" & chr(1) & "2行2列文字" & chr(1) & "2行3列文字" )
表格头
新增的第一行,就是列表头
控件属性里选择,锁定首行,还可以设置不同的颜色来区别。

列宽度和列对齐设置
未设置宽度,默认控件宽度的 25%
宽度设置带 % 号的是控件宽度的百分比
YFtable1.ColumnWidth="20%,20%,32,107,418,33,47,200"
YFtable1.ColumnAlignment = "2,1,2,1,0,2,1,0"
自绘
可以自己绘画,让控件更个性化
Function Form1_YFList1_OwnerDraw(hWndForm As hWnd,hWndControl As hWnd,StartY As Long,ItemHeight As Long ,sumU As Long,nList As YFListData Ptr,selIndex As Long,kMouse As Long,kPress As Long) As LResult
End Function
自动生成的事件,里面还带详细的例题,可以看例题学习。
图标制作
使用 VisualFreeBasic 自带的 【矢量图标编辑器】 编辑一个,里面自带了很多图标,可以复制过来即可,在 VFB里的 工具菜单里,就可以找到这个软件。
评论一下?