0

テキスト(太字の黒)を覆わないように、明るいJPanel色の背景を設定する必要があります。

現時点で私はこれを持っています:

import java.util.Random;

....

private Random random = new Random();
private JPanel panel = new JPanel();
panel.setBackground( new Color( random.nextInt() ) );

しかし、それは「任意の」ランダムな色を生成します。どうやってやるの?

ありがとう

4

3 に答える 3

8

Color赤、緑、青の 3 つの値を取るコンストラクタがあります。それぞれに 100 程度から 255 までのランダムな値を与えると、明るい色だけが得られます。

HSB システムを使用すると、さらに良い結果が得られる可能性があります。 new Color(Color.HSBtoRGB((float) Math.random(), (float) Math.random, 0.5F + ((float) Math.random())/2F));

于 2013-07-18T09:49:44.433 に答える
4

RGB 値から色を作成し、R、G、B が十分に大きく、全体的な色が明るくなるようにします。[0, 0, 0] は黒です。[255, 255, 255] は白です。たとえば、R、G、B の値が 200 から 255 の間のランダムな値である色を生成できます。

于 2013-07-18T09:48:00.167 に答える
2

背景としてランダムな色を使用しないことをお勧めします。それは醜い背景色を印刷し、あなたのプログラムをずさんに見せます。

美しい色のリストを作成し、リスト内の色の 1 つをランダムに選択することをお勧めします。

以下のウェブページから美しい色のリストを見つけることができます。

http://colorschemedesigner.com/

http://www.colorcombos.com/

http://www.color-swatches.com/top-swatches.html

于 2013-07-18T09:55:20.243 に答える