中间部分,比如
'哈哈abc123 
最大字符数是固定的吗,如果固定,可以自己先格式化一下如果不固定,那就要先取得每次返回结果中这一部分的最大字符数,然后再进行格式化

解决方案 »

  1.   

    以 "哈哈123" 为例,先用 encoding.utf8 获取 "哈哈123" 的字节数,由于是汉字加数字,得到的值是 4+3=7,如果想把字符补成长度为 20,那么还差 13 个空格,在 "哈哈123" 后面加 13个空格就行了
      

  2.   

    中间部分,比如
    '哈哈abc123 
    最大字符数是固定的吗,如果固定,可以自己先格式化一下如果不固定,那就要先取得每次返回结果中这一部分的最大字符数,然后再进行格式化
    ----格式化部分,倒没什么,即使固定也没问题。
    现在的问题就是汉字字母空格混合时,他们的显示宽度就不一样了。select '哈哈abc123.tif' 
    select '哈哈bc123 .tif'
    select '哈哈      .tif'上面的结果在这里是对齐的,但在我的数据库里就不对齐了。我现在是把这三条取到,datagridview里面显示。
    我想不论是在数据库端还是程序端,哪里能设置一下呢,使相同字符串长度的字符串看上去是对齐的。
      

  3.   

    以 "哈哈123" 为例,先用 encoding.utf8 获取 "哈哈123" 的字节数,由于是汉字加数字,得到的值是 4+3=7,如果想把字符补成长度为 20,那么还差 13 个空格,在 "哈哈123" 后面加 13个空格就行了
    ----有没有只需要一个属性,就能把所有字符视为宽字符显示。
    我用的是datagridview
      

  4.   

    楼主要的是类似于word里两端对齐这种功能吧,DataGridView里好像是没有现成属性的,需要自己先格式化一下,可以参考一下我在这个帖子里的处理方法,也是处理中英混合字符对齐问题的
    http://community.csdn.net/Expert/topic/5749/5749143.xml?temp=.7339746
      

  5.   

    select '哈哈abc123.tif' 
    select '哈哈bc123 .tif'
    select '哈哈      .tif'类似这个,为什么这里输入完全是对齐的。
    数据库输入也是对齐,显示出来就变样了呢...
      

  6.   

    楼主要的是类似于word里两端对齐这种功能吧,DataGridView里好像是没有现成属性的,需要自己先格式化一下,可以参考一下我在这个帖子里的处理方法,也是处理中英混合字符对齐问题的
    http://community.csdn.net/Expert/topic/5749/5749143.xml?temp=.7339746
    ---谢谢你的文章。我现在的问题是,格式化可以不要,我自己手动加空格。
    但是,无论怎么加空格都有稍微对不齐情况。
    例如
    select '哈哈abc123.tif' 
    select '          .tif'
    这样的,我就是手动加了2*2+6 = 10个空格,它看上去也不齐。
      

  7.   

    有些字体,英文字符的宽度不相同。用记事本试一下就知道,在 Arial 字体下,10个i和10个w的宽度差很多。而在宋体下,则完全相同。如果一定要对齐,请用宋体或其他字符宽度相同的字体。