1

Netbeansでビジュアルデザインエディタを使用しています。対応するJLabelを持つ2つのスライダーがあります。スライダーを動かすと色が変わる長方形が欲しいです。これをデザイナーが生成したコードに組み込むにはどうすればよいですか?

スライダーの近くに長方形をペイントするにはどうすればよいですか?

4

1 に答える 1

2

Javaの色はRGB値で構成されています。

Color c = new Color(red, green, blue)

RedGreenおよびBlueすべてのinteger値は0〜255です。Netbeansビジュアルエディタでは、スライダーの値maximumと値の両方を設定できます。minimum

色に透明度を追加するには

Color c = new Color(red, green, blue, alpha)

Red、、およびすべてGreenのフロート値は0.0〜1.0です。BlueAlpha

スライダーを動かしたときに色を変更するには、マウスをドラッグしたときのイベントを追加し(ビジュアルエディターを使用してこれを行うことができます)、を使用slider.getValue()して値を取得します。

スライダーの近くに長方形をペイントするには(少なくとも3つのスライダーが必要です。各rbgコンポーネントに1つずつ)、スライダーの位置と寸法をslider.getBounds()(境界には含まれxy座標に加えwidthheight)で取得します。

例(スライダーの右側に30x30 20ピクセルの長方形を描画します)

private void mouseDragged(java.awt.event.MouseEvent evt) {

    color = new Color(sliderRed.getValue(), sliderGreen.getValue(), sliderBlue.getValue());
    this.repaint();
}

public void paint(Graphics g) {

    g.setColor(color)
    g.fillRect(sliderRed.getBounds().x + sliderRed.getBounds().width + 20, sliderRed.getBounds().y, 30, 30);
}
于 2012-05-23T22:03:25.443 に答える