Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
颜色类java_Java_User Interface - Fatal编程技术网

颜色类java

颜色类java,java,user-interface,Java,User Interface,代码基本上应该为1到45之间的数字分配唯一的颜色,每次绘制特定数字时,分配给该特定数字的颜色应该是文本字段的背景。问题是我不能给数字分配颜色 代码*************************************************************** import java.awt.*; import java.awt.event.*; import java.util.Arrays; public class Lottery extends Frame implemen

代码基本上应该为1到45之间的数字分配唯一的颜色,每次绘制特定数字时,分配给该特定数字的颜色应该是文本字段的背景。问题是我不能给数字分配颜色

代码***************************************************************

import java.awt.*;
import java.awt.event.*;
import java.util.Arrays;

public class Lottery extends Frame implements ActionListener{

    private TextField[] t = new TextField[100];
    private Button b;

    public Lottery(){
        for(int i=0;i<7;i++){
            this.t[i] = new TextField(5);
            t[i].setEditable(false);
        }

        b = new Button("Draw Numbers");
        b.addActionListener(this);

        this.add(b);
        for(int i=0;i<7;i++){
            this.add(t[i]);
        }

        this.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent windowevent){
                System.exit(0);
            }
        });

        this.setLayout(new FlowLayout());
        this.setTitle("Lottery Draw");
        this.pack();
        this.setVisible(true);
    }

    public static int[] lotteryNumbers(){
        int[] numbers = new int[7];
        int i = 0;
        while(i<7){
            int value = 1 + (int)(45*Math.random());
            if(isUnique(numbers,value)){
                numbers[i] = value;
                i++;
            }
        }
        return numbers; 
    }

    public static boolean isUnique(int[] array, int value){
        for(int i=0; i<array.length; i++)
        {
            if(array[i] == value) return false;
        }
        return true;
    }

    @Override
    public void actionPerformed(ActionEvent e) {

        int[] numbers = lotteryNumbers();
        Arrays.sort(numbers);

        for(int i=0;i<7;i++)
        {
            t[i].setText(Integer.toString(numbers[i]));
        }


    }


    public static void main(String[] args) {
        System.out.println("Start of Application");
        Lottery lot = new Lottery();
        System.out.println("End of Application");
    }

}
import java.awt.*;
导入java.awt.event.*;
导入java.util.array;
公共类彩票扩展框架实现ActionListener{
私有文本字段[]t=新文本字段[100];
专用按钮b;
公共彩票(){

对于(int i=0;i如果需要随机颜色,可以在设置文本字段文本时执行以下操作:

Random r = new Random();
int[] numbers = lotteryNumbers();
Arrays.sort(numbers);

for(int i=0;i<7;i++)
{
    t[i].setText(Integer.toString(numbers[i]));
    t[i].setBackground(new Color(r.nextFloat(), r.nextFloat(), r.nextFloat()));
}

如果需要随机颜色,可以在设置文本字段文本时执行以下操作:

Random r = new Random();
int[] numbers = lotteryNumbers();
Arrays.sort(numbers);

for(int i=0;i<7;i++)
{
    t[i].setText(Integer.toString(numbers[i]));
    t[i].setBackground(new Color(r.nextFloat(), r.nextFloat(), r.nextFloat()));
}

从这段代码中我不清楚你想做什么。也许你需要使用类对象列表,而不是原始数组。你在哪里设置背景色?它不在那里,因为我不知道怎么做。从这段代码中我不清楚你想做什么。也许你需要使用类对象列表,老鼠她不是一个原始数组。你在哪里设置背景色?它不在那里,因为我不知道怎么做