一个变异的子窗口,谁遇到过吗?来看看吧

时间:2021-04-21 20:08:42
我用delphi6.0写了一个MDI方式的程序,在xp平台下,程序做好以后,安装到另一台
98的机器上时,一个子窗口出现变异,子窗体上的所有的控件,如label,edit等等都
变得很大一个,请问有谁知道这是怎么回事么.

7 个解决方案

#1


设置form.Scaled:= False;

#2


一般这样的程序都需要在不同平台下编译才不会出现控件移位等问题!

#3


将所有的窗体的字体的字符集设成GB2312就没有问题了!

#4


关键是操作系统默认字符集不一样造成的。

#5


原因:Delphi在Win98平台的默认中文字符集是Chinese-Gb2312,而在Win2000下即使你选用中文字体,字符集也不会自动改变为Chinese_Gb2312,需要手动选择。
这个问题与平台、分辨率等都没有关系。

解决方法:(在WinXP平台下)在Form的Font属性中点...,在弹出的字体选项窗口中“字符集”一项中选“Chinese_Gb2312”;注意:只有你的字体是中文的,“字符集”一项中才会有“Chinese_Gb2312”,否则只有“西方”。

或者:(在WinXP平台下)在Form的Font属性中点左边的“+”号,展开后,在下面的Charset属性中选“GB2312_CHARSET”。就行了。

这样在WinXP平台下做出来的界面在Win98下运行时会和你设计时的一模一样。

#6


同意以上诸位

#7


选择窗体的font属性为宋体,9号字就可以了,当然窗体上的所有控件都应该使用的默认字体。

#1


设置form.Scaled:= False;

#2


一般这样的程序都需要在不同平台下编译才不会出现控件移位等问题!

#3


将所有的窗体的字体的字符集设成GB2312就没有问题了!

#4


关键是操作系统默认字符集不一样造成的。

#5


原因:Delphi在Win98平台的默认中文字符集是Chinese-Gb2312,而在Win2000下即使你选用中文字体,字符集也不会自动改变为Chinese_Gb2312,需要手动选择。
这个问题与平台、分辨率等都没有关系。

解决方法:(在WinXP平台下)在Form的Font属性中点...,在弹出的字体选项窗口中“字符集”一项中选“Chinese_Gb2312”;注意:只有你的字体是中文的,“字符集”一项中才会有“Chinese_Gb2312”,否则只有“西方”。

或者:(在WinXP平台下)在Form的Font属性中点左边的“+”号,展开后,在下面的Charset属性中选“GB2312_CHARSET”。就行了。

这样在WinXP平台下做出来的界面在Win98下运行时会和你设计时的一模一样。

#6


同意以上诸位

#7


选择窗体的font属性为宋体,9号字就可以了,当然窗体上的所有控件都应该使用的默认字体。