none
如何像label控件那样自动获取字符串的宽度 RRS feed

  • 问题



  • Graphics g = this.CreateGraphics();
    SizeF sizeF = g.MeasureString


    这种方式无法准确的获得字符串宽度

    label控件自动调节大小的宽度比较完美 不知道如何通过程序实现

    谢谢

    2012年3月14日 16:43

答案

  • 您好,还是有误差,因为我要控制LED显示,有误差有可能导致一行的内容换行了,结果就是屏的格式面目全非,呵呵。

    发现label控件的自动宽度能准确的获取字符串的宽度,临时解决方案就是通过隐藏的label控件获取字符串宽度,用您之前的那种方案,不同字体误差还是很大的

    我用Arial字体9pt “1111111111”label控件的宽度是77,用您的程序获取的宽度是70

    谢谢


    2012年3月15日 2:45

全部回复

  • 您好,
    請問這帖「请问如何获取比例字体的宽度」計算出來的長度還是有問題嗎?

    以上說明若有錯誤請指教,謝謝。
    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/

    2012年3月15日 2:12
  • 您好,还是有误差,因为我要控制LED显示,有误差有可能导致一行的内容换行了,结果就是屏的格式面目全非,呵呵。

    发现label控件的自动宽度能准确的获取字符串的宽度,临时解决方案就是通过隐藏的label控件获取字符串宽度,用您之前的那种方案,不同字体误差还是很大的

    我用Arial字体9pt “1111111111”label控件的宽度是77,用您的程序获取的宽度是70

    谢谢


    2012年3月15日 2:45
  • 看起來,label是用Control.GetPreferredSize 方法來取得Size的!

    以上說明若有錯誤請指教,謝謝。
    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/

    2012年3月15日 5:16
  • label控件的行距和rtf控件的行距不一样,郁闷哦。
    2012年3月15日 14:06