以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请问如何代码设定副表字符列各个单元格对齐方式 [已解决] (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=145257) |
-- 作者:km007 -- 发布时间:2020/1/13 23:32:00 -- 请问如何代码设定副表字符列各个单元格对齐方式 [已解决] 请问如何代码设定副表字符列各个单元格对齐方式? 例如 表A 第一列(字符型) 我想将第一列的第一行和第三行 单元格内容 靠右显示,第二行单元格内容居中显示,第四行单元格内容靠左显示 请问如何用代码去设置呢? 意思是:我想实现的是 同一列数据,不同单元格 不同的靠齐显示方式
[此贴子已经被作者于2020/1/14 14:27:50编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/1/14 8:34:00 -- 这个没有办法,同一列数据只能是一种对齐方式。 |
-- 作者:km007 -- 发布时间:2020/1/14 11:29:00 -- 如果有 DrawCell 事件代码可以吗? |
-- 作者:有点蓝 -- 发布时间:2020/1/14 11:36:00 -- 理论上是可以的。就是超长换行处理比较麻烦,并且数据多了绘制就比较卡了 |
-- 作者:km007 -- 发布时间:2020/1/14 11:46:00 -- Select Case e.Col.Name Case "金额" Select Case e.Row.IsNull(e.Col.Name) Case False Select Case e.Row("日期") Case "1月" \'该单元格内容靠右显示 Case "分类" \'该单元格内容居中显示 End Select End Select End Select 请问红色字这里的代码应该怎么写呢? |
-- 作者:有点蓝 -- 发布时间:2020/1/14 12:11:00 -- 麻烦:http://foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=106469&skin=0 首先,需要计算文字的宽度,参考上面MeasureString的用法 其次判断单元格的宽度,然后计算绘制的位置,比如靠右:绘制起始左边距 = 单元格的宽度 - 文字的宽度
|
-- 作者:km007 -- 发布时间:2020/1/14 14:28:00 -- 问题解决,谢谢 |