我已经颜色名称转换串色“ID”
public String colorid = "Blue";
而且
Sbrush = new SolidBrush(Color.Convert.ToInt32(colorid));
我希望能够到别的地方定义colorid,这就是为什么我写了像SolidBrush码那。现在,这并不工作,我将不胜感激,如果有人可以帮助我
我已经颜色名称转换串色“ID”
public String colorid = "Blue";
而且
Sbrush = new SolidBrush(Color.Convert.ToInt32(colorid));
我希望能够到别的地方定义colorid,这就是为什么我写了像SolidBrush码那。现在,这并不工作,我将不胜感激,如果有人可以帮助我
使用从名字中创建色彩
Color.FromName("Blue")
太棒了!还有一件事,我该如何制作 public String colorid =“Blue”; (in class Snake) 在Form1中可以这样访问: Snake.colorid =“Black”; – vlovystack
@MatthiasVerhoeven将其定义为'public static readonly' –
我做了你所说的,现在有public static readonly String colorid =“Black”; 但是,这是行不通的:/ – vlovystack
这样既支持颜色名称和HTML颜色:
string nm = "Blue"; // or f.ex. "#0000ff"
if (nm.StartsWith("#")) {
return ColorTranslator.FromHtml(nm);
}
else {
return Color.FromName(nm);
}
+1 OP没有要求HTML颜色,但我不知道'ColorTranslator' –
谢谢,这会有所帮助! – vlovystack
是什么你看到的行为?它怎么不起作用?你还试过了什么? – tmesser
我从'SolidBrush'猜测这是WPF - 为了清晰起见,应该标记它。 –
@DanPuzey,'SolidBrush'是GDI +。在WPF中它是'SolidColorBrush'。 –