У меня есть один LoginScreen
и один MainWindow
. Когда попытка подключения преуспевает в БД, появляются LoginScreen disposed
и MainWindow.UIManager in Button Action
У меня есть одна кнопка: ActionListener
для создания JOptionPane
. Код успешно работает на самом деле. Я думаю, что у меня три проблемы в Painting
. Позвольте мне объяснить проблемы один за другим;
Задача 1;
UIManager UI=new UIManager();
Object paneBG = UI.get("OptionPane.background");
Object panelBG = UI.get("Panel.background");
UI.put("OptionPane.background", Color.red);
UI.put("Panel.background", Color.red);
String[] buttons2 = { "EXIT", "OK" };
int rc2 = JOptionPane.showOptionDialog(MainWindow.this,
panel,
"User Input",
JOptionPane.INFORMATION_MESSAGE,
JOptionPane.PLAIN_MESSAGE,
icon,
buttons2,
buttons2[1]
);
UI.put("OptionPane.background", paneBG);
UI.put("Panel.background", panelBG);
Я использую выше код для изменения background color
из OptionPane
, показывать пользователю и откатить цвета интерфейса к оригиналу.
Если я непосредственно запустить MainWindow
и нажмите на кнопку, цвет изменен (уверен панель и кнопки область сохранить исходные цвета в OptionPane, но в других областях OptionPane обратиться к красному Это еще одна проблема.), Как это;
Но когда я пришел из LoginScreen
, Логин попытка добиться успеха, LoginScreen disposed
и MainWindow появляются. Я нажимаю на ту же кнопку, но OptionPane
не нарисован сейчас, вот так;
Задача 2;
У меня есть еще одна кнопка в MainWindow, и она создает еще одну OptionPane. Я запускаю MainWindow и нажимаю первую кнопку (которая меняет цвет пользовательского интерфейса и выполняет откат), закройте его, а затем нажмите вторую кнопку (у которой есть еще одна OptinPane) OptionPane по-прежнему окрашена, поэтому цвета пользовательского интерфейса не отскакивают от значений по умолчанию.
Задача 3;
Если мы решим первую и вторую проблему, как я могу сделать transparent
эти внутренние панели (которая имеет маркировку и TextField панель одной кнопки и один)
Если вы повторно используете тот же диалог, почему бы не создать настраиваемый 'JDialog'? – user1803551
Потому что мне нужно написать ActionListener для каждой кнопки в JDialog. OptionPane легко использовать, я думаю. На самом деле мне нужна градиентная живопись на OptionPanes. Если я не решу эти проблемы, я обращаюсь к JDialog. –
Затем отправьте сообщение [MCVE] (http://stackoverflow.com/help/mcve). Обязательно скопируйте код в новый проект * и убедитесь, что он компилируется и запускается, прежде чем публиковать его здесь. – user1803551