Я пишу чат, используя свинг. Я создал банку из основного клиента, но он не может открыть окно, пока он открывается из Intelij... Как я могу решить эту проблему?
Это мой конструктор класса окна (я создаю окно в клиенте Main):
public MyWindow() {
setBounds(600,300,600,500);
setLocationRelativeTo(null);
setTitle("Chat");
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
Font chatFont = new Font("Arial", Font.BOLD, 12);
chatArea = new JTextArea();
chatArea.setEditable(false);
chatArea.setFocusable(false);
chatArea.setLineWrap(true);
chatArea.setFont(chatFont);
chatArea.setBackground(Color.decode("#171717"));
chatArea.setForeground(Color.decode("#f5f5f5"));
JScrollPane chatScrollable = new JScrollPane(chatArea);
add(chatScrollable, BorderLayout.CENTER);
jListOfUsers = new JList(new DefaultListModel());
jListOfUsers.setPreferredSize(new Dimension(120, 1));
jListOfUsers.setFont(chatFont);
jListOfUsers.setBackground(Color.decode("#171717"));
jListOfUsers.setForeground(Color.decode("#f5f5f5"));
add(jListOfUsers, BorderLayout.EAST);
msgPanel = new JPanel(new BorderLayout());
add(msgPanel, BorderLayout.SOUTH);
JButton sendMsg = new JButton("SEND");
msgPanel.add(sendMsg, BorderLayout.EAST);
msgField = new JTextField();
msgPanel.add(msgField, BorderLayout.CENTER);
authPanel = new JPanel(new GridLayout(1,3));
add(authPanel, BorderLayout.NORTH);
jtfLogin = new JTextField();
jpfPass = new JPasswordField();
JButton jbAuth = new JButton("AUTH");
authPanel.add(jtfLogin);
authPanel.add(jpfPass);
authPanel.add(jbAuth);
setAuthorized(false);
setVisible(true);
}
Я не могу понять, что в этом плохого. Помогите пожалуйста мне.
Спасибо, попробую переписать свой вопрос
Создавайте и управляйте объектами Swing GUI Только на поток отправки событий.
Я пробовал это, но мне это не помогает. Приложение просто не открывается из jar.
Я решил эту проблему, выбрав правильную версию JDK. Это было неправильно в структуре проекта...
Это много кода. У вас было бы больше шансов с минимальный воспроизводимый пример. Можете ли вы редактировать задать вопрос и добавить более подробную информацию о том, как вы создаете и запускаете файл jar? Что происходит, вы получаете какие-либо ошибки?