Цвет кнопок Java Swing

Я использую NET Beans IDE для разработки моего приложения в LINUX. Я использовал синтетический пакет для создания нового внешнего вида. Все хорошо до сих пор.

Теперь мой следующий этап – добавлять цвета к кнопкам, когда изменяется состояние базы данных.

Например:

В ресторане у меня есть 2 стола, и когда 8 человек пришли поужинать, и я создам 2 таблицы в своем программном обеспечении, так как люди без присмотра, я хочу, чтобы кнопки для этих двух таблиц были зелеными. Когда заказ обрабатывается для любой из этих таблиц, цвет кнопки обрабатываемой таблицы должен быть изменен на оранжевый. Когда он находится в процессе обработки, он должен мигать цветом. Как это сделать в java? Я позабочусь о обновлении базы данных, я просто хочу знать, как изменить цвета кнопок и добавить технологию мигания.

Вот вопрос и несколько ответов, связанных с миганием компонента.

Добавление: вы можете узнать больше в статье « Как использовать кнопки» . В частности, вы можете использовать setForeground() чтобы изменить цвет текста кнопки, но соответствующая setBackground() не хорошо читается на некоторых платформах. Использование Border – одна из альтернатив; цветная панель, показанная ниже, является другой.

введите описание изображения здесь

 package overflow; import java.awt.Color; import java.awt.EventQueue; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; import java.util.List; import java.util.Random; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.Timer; public class ButtonTest extends JPanel implements ActionListener { private static final int N = 4; private static final Random rnd = new Random(); private final Timer timer = new Timer(1000, this); private final List panels = new ArrayList(); public ButtonTest() { this.setLayout(new GridLayout(N, N, N, N)); for (int i = 0; i < N * N; i++) { ButtonPanel bp = new ButtonPanel(i); panels.add(bp); this.add(bp); } } @Override public void actionPerformed(ActionEvent e) { for (JPanel p : panels) { p.setBackground(new Color(rnd.nextInt())); } } private static class ButtonPanel extends JPanel { public ButtonPanel(int i) { this.setBackground(new Color(rnd.nextInt())); this.add(new JButton("Button " + String.valueOf(i))); } } public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { JFrame f = new JFrame("ButtonTest"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ButtonTest bt = new ButtonTest(); f.add(bt); f.pack(); f.setLocationRelativeTo(null); f.setVisible(true); bt.timer.start(); } }); } } 
  • Какое правильное действие при закрытии окон в java / swing?
  • Размещение компонента на стеклянной панели
  • Как нарисовать дерево, представляющее график подключенных узлов?
  • изображения не загружаются
  • Как добавить изображение в JPanel?
  • Повернуть BufferedImage внутри JPanel
  • Как эффективно использовать cardlayout в java для переключения с панели с помощью кнопок внутри различных панельных конструкторов
  • Как добавить гиперссылку в JLabel
  • как создать собственный файл со значком, который наследует значок JFrame, который я установил, в java и моем собственном файле используйте FileOutputStream и ObjectOutputStream
  • Интеграция JavaFX 2.0 WebView в приложение Swing Java SE 6
  • Eclipse WindowBuilder, перекрывающиеся JPanels
  • Interesting Posts

    Есть ли способ сохранить функцию в списке или словаре, чтобы при вызове индекса (или ключа) он запускал сохраненную функцию?

    Как правильно отобразить хинди при экспорте в pdf?

    Создание более старого компьютера

    Получить наибольший UIViewController

    Предупреждение: обнаружены конфликты между различными версиями одной и той же зависимой сборки

    Почему размер жесткого диска ниже фактического?

    Синхронизация Outlook между двумя компьютерами?

    Ионный 2: Кордова недоступна. Обязательно включите cordova.js или запустите в устройстве / симуляторе (работает в эмуляторе)

    Проверьте, возвращает ли NSURL 404

    Как установить .NET framework как необходимое условие с помощью InnoSetup?

    Существуют ли специальные батареи для чистых синусоидных ИБП? Нужен ли мне конкретный тип батареи ИБП?

    Как изменить параметры конструктора scala по умолчанию на private val?

    Диалоговое окно Android Alert с одной, двумя и тремя кнопками

    Разница между событиями и делегатами и соответствующими приложениями

    Мой мак взломан? Найденные странные вещи

    Давайте будем гением компьютера.