使用字符串设置JLabel的颜色

Rob*_*hin 3 java swing colors jlabel foreground

我正在开发一个Java项目.我希望用户为Label输入颜色.我想做这样的事情,但是用String.

jLabel3.setForeground(Color.blue);
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的,但没有奏效:

String a = "blue";
jLabel3.setForeground(Color.a);
Run Code Online (Sandbox Code Playgroud)

要么:

String a = "blue";
jLabel3.setForeground(a);
Run Code Online (Sandbox Code Playgroud)

用方法可能有另一种方法吗?任何帮助都会很棒.谢谢.

Eng*_*uad 7

这是一种方式:

Map<String, Color> colors = new HashMap<String, Color>();

// ...

colors.put("blue", Color.BLUE);
colors.put("red", Color.RED);
colors.put("green", Color.GREEN);
// other colors
Run Code Online (Sandbox Code Playgroud)

然后使用它像:

String a = "blue";
jLabel3.setForeground(colors.get(a.toLowerCase()));
Run Code Online (Sandbox Code Playgroud)

编辑:考虑一个颜色选择器.请参见如何使用颜色选择器.