delphi radioButton和checkbox 字体差错颜色怎么改?我设置了Font的Color,但根本没用,还是黑色的。
这是为什么?怎么解决?
ParentFont也设置成false了。
求大虾解答。

解决方案 »

  1.   

    是不是设置了ParentFont属性了?一般改Font是可以的。
      

  2.   

    google了一下,改fontcolor没用的貌似,要么用三方控件,要么自己写一个。网上找的最简单的办法是:
    TCheckBox = class(StdCtrls.TCheckBox)
    public
      procedure CNCtlColorStatic(var Message: TWMCtlColorStatic); message CN_CTLCOLORSTATIC;
    end;procedure TCheckBox.CNCtlColorStatic(var Message: TWMCtlColorStatic);
    begin
      SetTextColor(Message.ChildDC, ColorToRGB(clRed)); // or RGB(255,0,0));
      SetBkMode(Message.ChildDC, TRANSPARENT);
      Message.Result := GetStockObject(NULL_BRUSH);
    end;http://stackoverflow.com/questions/2356431/how-can-you-change-the-font-color-of-a-theme-enabled-control
      

  3.   

    他们自己不就有font属性吗,我改过了,可以改
      

  4.   

    楼上的用delphi几啊?我用delphi2010试了,改不鸟~
      

  5.   

    delphi7,你加上xpmanifest控件,估计也改不了了,帖子上说这东西由系统的theme确定了~
      

  6.   

    我用DELPHI 2010 在 WINDOWS 7 下也是遇到同样的问题。
      

  7.   

    delphi xe3 在windows7下也不行,不知道其他工具和系统下的情况