Я пытаюсь создать объект, когда пользователь нажимает кнопку. До сих пор я придумал реализацию ниже, но, похоже, она не работает. Я вообще не имел дело с пользовательским интерфейсом Swing и Java, поэтому я Я предполагаю, что это может быть любительская ошибка.
Объект, который я пытаюсь создать, относится к другому типу, называемому DebitCard.
private JFrame frame;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
GenerateCard window = new GenerateCard();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public GenerateCard() {
}
{
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JButton btnNewButton = new JButton("Generate card");
btnNewButton.setBounds(112, 213, 216, 41);
frame.getContentPane().add(btnNewButton);
}
private class buttonEvent implements ActionListener {
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
if (command.equals("Generate card")) {
DebitCard a = new DebitCard();
}
}
}
Графические интерфейсы Java должны работать с разными ОС, размером экрана, разрешением экрана и т. д., используя разные PLAF в разных регионах. Как таковые, они не способствуют идеальной компоновке пикселей. Вместо этого используйте диспетчеры макетов или их комбинации вместе с отступами и границами макета для белое пространство.




Судя по имеющемуся у вас коду, вы, похоже, забыли зарегистрировать buttonEvent в btnNewButton.
btnNewButton.addActionListener(new buttonEvent());
Возможно, вы захотите поближе познакомиться с:
У вас есть "buttonEvent", но вы не установили его на свой "btnNewButton". Так что он ничего не сделает