想问问字体的事?98和2000统一显示。 难道delphi做的程序有缺陷? (50分)

  • 主题发起人 主题发起人 xiaoxiami2
  • 开始时间 开始时间
X

xiaoxiami2

Unregistered / Unconfirmed
GUEST, unregistred user!
我很喜欢默认的字体,但为了在win98和win2000下都能显示正常,不的不改为gb2312,我很讨厌
宋体字,但是我看很多软件,例如oicq的字体就是默认的,不是宋体的,为什么在win98和win2000下正常显示?
 
Oicq好像不是用Delphi开发的。
如果你的机器上没有西文字符集,估计用默认字体,也没有问题
 
没觉得宋体字难看啊!(10号)
 
在每个Form的FormCreate事件里调用SetComponentFont(self, GB2312_CHARSET, '宋体', 9);

type
TControlHack=class(TControl);

procedure SetComponentFont(Component: TComponent; charset: TFontCharset; fontname: string; fontsize: integer);
var
i: integer;
begin
if (Component is TControl) then
begin
TControlHack(Component).font.Charset:=charset;
TControlHack(Component).font.name:=fontname;
TControlHack(Component).font.size:=fontsize;
end;

for i:=0 to Component.ComponentCount-1 do
if (Component.Components is TControl) then
begin
TControlHack(Component.Components).font.Charset:=charset;
TControlHack(Component.Components).font.name:=fontname;
TControlHack(Component.Components).font.size:=fontsize;
end;
end;
 
不愿改字体的话,将form的scaled设为false效果也会好一些。
 
多人接受答案了。
 
后退
顶部