在Win98中,label的autosize设为true,font.size设为10,字体为宋体。
运行时一切正常。把程序放在Win2000中运行,发现label不能完全显示文字,要被吃掉一部分。如果在win98中设label的width足够宽,取消autosize,在Win2000中就可以完全显示。不知是不是控件本身对中文的支持问题?
运行时一切正常。把程序放在Win2000中运行,发现label不能完全显示文字,要被吃掉一部分。如果在win98中设label的width足够宽,取消autosize,在Win2000中就可以完全显示。不知是不是控件本身对中文的支持问题?
很久以前本人就解决这个问题了
Win98中的默认字体是MS Sans Serif 8号
而Win2000中是Tahoma 8号
即是不同操作系统的系统字体不同。如何做一个程序,它的界面字体能根据操作系统的系统字体不同而相应改变呢。以下是一个解决办法:
建一个空白窗体类,在Create构造函数中写:
Self.Font.Handle := GetStockObject(SYSTEM_FONT)
然后你的工程中的所有窗体都从这个基本窗体继承下来,这样就可以根据系统字体不同而相应改变了。--------------------
http://blog.csdn.net/linzhengqun