页面控件禁用选项卡上的文本 - 灰色文本

时间:2010-12-15 23:30:10

标签: delphi

我正在寻找(我认为)Windows API,我可以在TPageControl组件的OnDrawTab事件中使用它来在我选择的选项卡上显示灰色文本。我已经在过去和记忆中完成了这是我所做的(在OnDrawTab事件中)。不幸的是,我无法访问代码以回顾我之前是如何做到的。

我确信我使用了类似DrawText或TextOut之类的东西,但我能够为它添加一个标志或格式样式,使其外观变得灰暗。对于我的生活,我找不到我使用的命令。 ODS_DISABLED标志似乎是我所追求的东西,但它是一个Windows消息处理程序,所以我确定我之前没有使用它。我不是在这里写一个组件,只是处理OnDrawTab事件。

有人指出我正确的方向吗?

我正在使用Delphi 6。

由于

杰森

1 个答案:

答案 0 :(得分:4)

您可以使用DrawStateGrayString功能。

procedure TForm1.FormClick(Sender: TObject);
var
  s: string;
begin
  s := 'testar';
  DrawState(Canvas.Handle,
            0,
            nil,
            integer(@s[1]),
            length(s),
            10,
            10,
            0,
            0,
            DST_TEXT or DSS_DISABLED)
end;