• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zmiana koloru czcionki na przycisku w aplikacji okienkowej

42 Warsaw Coding Academy
0 głosów
1,037 wizyt
pytanie zadane 10 lutego 2021 w Java przez Hubert731 Obywatel (1,650 p.)

Napisałem prościutką aplikacje okienkowa kółko i krzyżyk, lecz kolor czcionki przycisku nie chce się zmienić na czerwony, dlaczego? 

package moje;

import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.print.PrinterJob;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLayeredPane;
import javax.swing.JTextField;

public class Kolko_i_krzyzyk extends JFrame implements ActionListener {
	
	static JTextField tekst;
	static JLayeredPane ekran = new JLayeredPane();
	static JButton button = new JButton();
	static int licznik=0;

	
	public Kolko_i_krzyzyk () {
		super("Kółko i krzyżyk");
		ekran = new JLayeredPane();
		setVisible(true);
		setSize(800, 800);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setResizable(false);
		
		//Siatka podzielona 3 na 3
		setLayout(new GridLayout(3,3));
		
		//Tworzenie 9 przycisków
		for(int i = 1; i<=9; i++) {
		JButton button = new JButton();
		add(button);
		button.addActionListener(this);
		}
	}

	public static void main(String[] args) {
		JFrame okno = new Kolko_i_krzyzyk();
	}

	@Override
	public void actionPerformed(ActionEvent e) {
	JButton  button = (JButton) e.getSource();
	if(licznik%2==0 ) {
    	button.setText("x");
    	button.setFont(new Font ("Arial", Font.BOLD, 90));
    }
	else {
		button.setText("O");
		button.setForeground( Color.RED.darker());
		button.setFont(new Font ("Arial", Font.BOLD, 90));
	}
	button.setEnabled(false);
	licznik++;
	}
	}

 

2 odpowiedzi

+1 głos
odpowiedź 10 lutego 2021 przez Marak123 Stary wyjadacz (11,190 p.)
Spróbuj z małej napisać red.

W wyszukiwarkę sobie wpisz po angielsku bo są takie problemy na stackoverflow itp. więc może tam znajdziesz.
komentarz 11 lutego 2021 przez Hubert731 Obywatel (1,650 p.)
Z małej próbowałem nic nie dało.

Ok dzięki poszukam jeszcze odpowiedzi :D
0 głosów
odpowiedź 11 lutego 2021 przez Hubert731 Obywatel (1,650 p.)

Wszystko spowodowane było przez button.setEnabled(false), wiec zmiana koloru nastepuje w ten sposob: 

button.setUI(new MetalButtonUI() {
    		protected Color getDisabledTextColor() {
    		return Color.RED;	
    		}
    	});

 

Podobne pytania

0 głosów
1 odpowiedź 907 wizyt
0 głosów
1 odpowiedź 890 wizyt
pytanie zadane 25 listopada 2019 w C i C++ przez Hardwell Dyskutant (9,020 p.)
0 głosów
3 odpowiedzi 577 wizyt

93,395 zapytań

142,389 odpowiedzi

322,569 komentarzy

62,754 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...