У меня проблема с SWING GUI или, по крайней мере, я думаю, что это качели gui.JAVA Swing Gui Window Hangs
Вот мой основной код файла:
/**
*
*/
package com.tda.t2.ctas.slasher;
import javax.swing.SwingUtilities;
import com.tda.t2.ctas.slasher.gui.mainFrame;
import com.tda.t2.ctas.slasher.utils.MyCloseListener;
public class SLASHer {
public SLASHer() {
}
/**
* @param args
*/
public static void main(String[] args) {
//EventQueue.invokeLater(new Runnable() {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
ConfigData myconfig = new ConfigData();
try {
//TdaUrlHelper window = new TdaUrlHelper();
//window.tdaFrame.setVisible(true);
mainFrame tdaFrame = new mainFrame();
tdaFrame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
}
Простой вызов, чтобы создать рамку и открыть его. Есть другие файлы, которые я не помещал здесь для свободного места. Но проблема, которую я имею (и я пробовал на нескольких машинах и операционных системах), состоит в том, что кнопки в окне, кажется, висеть. Я могу выбрать окно и нажать на кнопки, и они выделяются так, как будто они были удалены, но ничего не происходит. У меня есть панель с вкладками, и щелчок на других вкладках тоже ничего не делает. Несколько раз это длится около 15 секунд, а иногда это длится несколько минут. Но он всегда в конце концов возвращается и будет реагировать на новый вход (т. Е. Он не запоминает всех щелчков, которые я сделал до того, как он вернулся). Приложение в целом прост в том, что он сидит, ожидая, пока пользователь что-то сделает, прежде чем что-то сделает, поэтому я смущен тем, почему он, кажется, виснет.
Любая помощь будет оценена по достоинству.
Благодаря
Ваша проблема в коде не показана. Вероятно, вы не подчиняетесь правилам Swing для правильной работы в ActionListeners для своих JButtons, но кто знает, пока мы не увидим оскорбительный код. –
Похоже, что либо поток GUI печатает трассировку стека (: \.), Либо вы неправильно произвели многопоточность. –
Обратите внимание, что класс mainFrame должен быть переименован в MainFrame. Все имена классов должны начинаться с буквы верхнего регистра. Это важно, если вы хотите, чтобы другие (как мы!) Могли понять ваш код и помочь вам. –