虚表 —— 单独设置表头某列的颜色和字体
为正确运行以下代码,请下载最新版虚表库。
import win.ui; import godking.vlistEx; /*DSG{{*/ mainForm = win.form(text="vlistEx - table adapter";right=849;bottom=578) mainForm.add( vlist={cls="vlistEx";left=10;top=10;right=840;bottom=570;db=1;dl=1;dr=1;dt=1;edge=1;transparent=1;z=1} ) /*}}*/ var t = { fields={"序号","姓名","年龄","地址","身份证"} }; for(i=1;10;1){ var tt={}; tt["序号"]="[@rowindex]"; // 行序号标记是不允许编辑修改的 tt["姓名"]=math.random(1000,9999)+"姓名"; tt["年龄"]=math.random(10,99); tt["地址"]=math.random(1000,9999)+"地址"; tt["身份证"]=math.random(1000,9999)+"身份证"; ..table.push(t,tt); } mainForm.vlist.setTable(t,,{80,100,100,100,200},0x1); // 对表头各列背景颜色进行单独设置的方法: mainForm.vlist.headerBkcolor = {0xFF0000,0x00FF00,0xFFFFFF,0x0000FF}; // 单独设置表头各列背景颜色 // 对表头各列字体颜色进行单独设置的方法: { // 方法一 mainForm.vlist.headerFont = ::LOGFONT(name="宋体";point=12;color=0x000000); //设置表头默认字体 mainForm.vlist.headerFont[1] = ::LOGFONT(name="宋体";point=12;color=0xFFFFFF); //单独设置某列字体 mainForm.vlist.headerFont[2] = ::LOGFONT(name="微软雅黑";point=18;color=0xFF0000); //单独设置某列字体 mainForm.vlist.headerFont[4] = ::LOGFONT(name="仿宋";point=22;bold=1;color=0x00FFFF); //单独设置某列字体 } { // 方法二 mainForm.vlist.headerFont = {}; // 没有设置默认字体 mainForm.vlist.headerFont[1] = ::LOGFONT(name="宋体";point=12;color=0xFFFFFF); //单独设置某列字体 mainForm.vlist.headerFont[2] = ::LOGFONT(name="微软雅黑";point=18;color=0xFF0000); //单独设置某列字体 mainForm.vlist.headerFont[4] = ::LOGFONT(name="仿宋";point=22;bold=1;color=0x00FFFF); //单独设置某列字体 } { // 方法三 mainForm.vlist.headerFont = { // 没有设置默认字体 [1] = ::LOGFONT(name="宋体";point=12;color=0xFFFFFF); //单独设置某列字体 [2] = ::LOGFONT(name="微软雅黑";point=18;color=0xFF0000); //单独设置某列字体 [4] = ::LOGFONT(name="仿宋";point=22;bold=1;color=0x00FFFF); //单独设置某列字体 } } { // 方法四 mainForm.vlist.headerFont = { // 没有设置默认字体 ::LOGFONT(name="宋体";point=12;color=0xFFFFFF); //单独设置某列字体 ::LOGFONT(name="微软雅黑";point=18;color=0xFF0000); //单独设置某列字体 ::LOGFONT(name="仿宋";point=22;bold=1;color=0x00FFFF); //单独设置某列字体 } } mainForm.show(); win.loopMessage();
来自其他网友的问答:
问:可以单独设置某列的对齐方式么?
mainForm.vlist.setTable(t,,{80,100,100,100,200},{0,1,2,1,2}); 其中的 {0,1,2,1,2} 就是各列对齐方式
问:感谢光庆提供这么强大的插件。 setColumns里面说明 参数3:格式或数组,使用_LVCFMT_前缀的常量,但是我指定了 2/*_LVCFMT_CENTER*/却是右对齐,不是居中对齐。是我哪里没更新对吗?
答:
_LVCFMT_不正确,下一版本修改此处提示。 统一使用 :水平: 0 左 1 中 2 右 垂直: 0 顶 4 中 8 底
问:请问除了 表头 字体可以设置,表格数据可以设置字体吗?或者默认表头和内容统一字体 PS:建议下网站 帖子回复能否改为 最新的回复排序靠前,这样可以看到最新回复
答:
单元格不能设置单独的字体,只能设置背景颜色和文本颜色。不要搞的太复杂,不然影响流畅性。 默认表头和内容不是统一字体吗?应该是吧。 帖子回复不是最新的回复排序靠前吗?应该是吧。
更多问答进入原贴: 虚表 —— 单独设置表头某列的颜色和字体-虚表专题-Aardio资源网