代码之家  ›  专栏  ›  技术社区  ›  Tigran Tokmajyan

将颜色应用于字体

  •  5
  • Tigran Tokmajyan  · 技术社区  · 16 年前

    我有这样的代码。

    System.Drawing.Color col = System.Drawing.ColorTranslator.FromHtml("#101B83");
    System.Drawing.Font nameFont = new System.Drawing.Font("Tahoma", 10);
    System.Drawing.Font birthdayFont = new System.Drawing.Font("Tahoma", 6);
    System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black);
    nameFont.Color = col;
    

    最后一行不起作用,因为找不到颜色字段。为什么?

    3 回复  |  直到 16 年前
        1
  •  15
  •   Klaus Byskov Pedersen    16 年前

    因为字体没有颜色。控件可以使用字体和颜色呈现文本,但颜色不是字体的属性。

    编辑:

    如果需要使用给定字体和颜色的文本框,可以执行以下操作(我假设您使用的是winforms):

    var myTextBox = new TextBox();
    myTextBox.ForeColor = col;
    myTextBox.Font = birthdayFont;
    myTextBox.Text = "Happy birthday!";
    
    this.Controls.Add(myTextBox);
    
        2
  •  2
  •   Andrew Barber Eric Lafortune    16 年前

    字体没有颜色。在绘图代码中使用颜色,或者 Control.ForeColor 财产

        3
  •  1
  •   Dr. Rajesh Rolen    16 年前

    不能直接将颜色设置为字体。 你必须分别设置字体和前景色来控制。