Olá!
Pessoal to fazendo um programinha de graficos. Uso o combobox para alterar as propriedades dos objetos. Queria saber como faço para alterar a cor só do grafico grande quando selecionar uma cor no combo, sendo que tenho um combo pra o grafico grande e outro combo para o grafico pequeno. Aqui ele define o tamanho do grafico que desenha duas barras e eu quero alterar só a cor do maior:private void desenhaHistograma(){
try{
y1= Integer.parseInt(campo1.getText());
yb1= Integer.parseInt(campo2.getText());
if (y1<= -1){
JOptionPane.showMessageDialog(null, "O valor digitado não pode ser negativo!" );
}if (yb1<=-1){
JOptionPane.showMessageDialog(null, "O valor digitado não pode ser negativo!");
}
else{
painelDeDesenho.setY2(Integer.parseInt(campo1.getText()));
painelDeDesenho.setY1(0);
painelDeDesenho.setX1(40);
painelDeDesenho.setX2(40);
painelDeDesenho.setYb2(Integer.parseInt(campo2.getText()));
painelDeDesenho.setYb1(0);
painelDeDesenho.setXb1(120);
painelDeDesenho.setXb2(40);
painelDeDesenho.repaint();
}
}
catch(NumberFormatException e) {
JOptionPane.showMessageDialog(null, " Este campo não permite a entrada da letras! "+ e.getMessage());
}
}
class HandLerButton implements ActionListener{
public void actionPerformed(ActionEvent e) {
if (e.getSource()instanceof JButton) {
JButton b = (JButton) e.getSource();
int tipo = comboTipoGrafico.getSelectedIndex();
if (tipo == 0) {
painelDeDesenho.setY2(0);
painelDeDesenho.setY1(0);
painelDeDesenho.setX1(0);
painelDeDesenho.setX2(0);
painelDeDesenho.setYb2(0);
painelDeDesenho.setYb1(0);
painelDeDesenho.setXb1(0);
painelDeDesenho.setXb2(0);
painelDeDesenho.repaint();
desenhaPizza();
}else{
painelDeDesenho.setB2(0);
painelDeDesenho.setB1(0);
painelDeDesenho.setA1(0);
painelDeDesenho.setA2(0);
painelDeDesenho.setBb2(0);
painelDeDesenho.setBb1(0);
painelDeDesenho.setAb1(0);
painelDeDesenho.setAb2(0);
painelDeDesenho.repaint();
desenhaHistograma();
}
// aqui acho que vai o código para altera a cor do grafico grande
}
}
}
protected void paintComponent(Graphics g){
super.paintComponents(g);
g.setColor(Color.white);
g.fillRect(0, 0, this.getWidth(),this.getHeight());
g.setColor(Color.GREEN);
g.fillRect(x1, y1, x2,y2);
g.setColor(Color.BLACK);
g.drawRect(x1, y1, x2, y2);
g.setColor(Color.RED);
g.fillRect(xb1, yb1, xb2,yb2);
g.setColor(Color.BLACK);
g.drawRect(xb1, yb1, xb2, yb2);
// Desenha pizza
g.setColor(Color.white);
g.fillOval(0, 0, this.getWidth(),this.getHeight());
g.setColor(Color.red);
g.fillOval(a1, b1, a2,b2);
g.setColor(Color.BLACK);
g.drawOval(a1, b1, a2, b2);
g.setColor(Color.RED);
g.fillOval(ab1, bb1, ab2,bb2);
g.setColor(Color.BLACK);
g.drawOval(ab1, bb1, ab2, bb2);
}
Alguem sabe como posso fazer para alterar a cor só do grafico maior pelo combobox?
Att.