Имеется вот такой код, если его переписать на Swing, баг так-же проявляется. Вообще-то проект на Свинге, этим кодом я проверял его наличие в AWT. Проблема в том, что после того, как выполнится лисенер кнопки, фокус останется на второй кнопке, которая отключена, и останется он там намертво, никакими Tab/Sfift+Tab/Ctrl+tab/... его оттуда не вытащить. package misc; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class AwtTest { /** * @param args */ static Button b1,b2; public static void CaSGUI() { Frame f = new Frame(); f.setLayout(new FlowLayout()); b1 = new Button("B1"); b2 = new Button("B2"); f.add(b1); f.add(b2); f.add(new Button("B3")); b1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub b1.setEnabled(false); b2.setEnabled(false); }}); f.pack(); f.setVisible(true); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); }}); } public static void main(String[] args) { // TODO Auto-generated method stub EventQueue.invokeLater(new Runnable() { @Override public void run() { CaSGUI(); }}); } } Забавно, но если сделать так: public void actionPerformed(ActionEvent e) { b1.setEnabled(false); b1.setFocusable(false); b2.setEnabled(false); b2.setFocusable(false); }}); бага не будет. Можно ещё отключать в обратном порядке. Есть ли ещё пути решения, так как эти - не всегда приемлимы. В документации по дефалтной Focus Traversal Policy сказано: > The Component must be visible, displayable, and enabled to be accepted. Врут, получается. Должно и без setFocusable() работать. Java с 1.4 по 1.6.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Почему кнопка на весь фрейм? (2020)
- Форум WebSocketServer и Timer Java (2018)
- Форум неработает обновление данных в таблице [java] (2012)
- Форум Java, swing, GridBagLayout (2008)
- Форум Кнопка не хочет занять место по коду? (2020)
- Форум JRE/JDK + Fedora + кириллица = Ж... ? (2008)
- Форум Декораторы в Java для listener'ов (2015)
- Форум Дошлифовать Swing GUI desktop application (2016)
- Форум Помогите с EJB под WildFly (2015)
- Форум Крешится да и всё тут (2012)