Привет, есть ли способ добавить JButton в JPanel из другого класса. Итак, в основном JPanel находится в Class A
, а JButton находится в Class B
, как я могу поместить кнопку на панели, которая находится в другом классе. Надеюсь, это имеет смысл, если мне нужно уточнить, дайте мне знать. Спасибо за помощь заранее.Добавить JButton в JPanel из другого класса
1
A
ответ
0
Вы можете сделать что-то вроде этого:
public OtherClass {
public JButton getButton(){
JButton b = new JButton();
b.set...();
b.set...();
b.set...();
b.set...();
return b;
}
}
Затем вы можете использовать эту функцию для создания JButton, которая всегда одинакова.
Другого варианта для создания кнопки, как статические и использовать его в OtherClass, это не решение хорошо, но это может быть вариантом
0
Вы бы нужен объект экземпляра класса B в классе А для доступа к своим переменным и методам. Вы могли бы написать что-то вроде следующего:
public ClassB {
public JButton getButton() {
return myJButton;
}
}
Другой способ сделать это, чтобы сделать JButton статическим в классе B, однако это грязный хак, что это плохой шаблон дизайна.
public ClassB {
public static JButton myJButton;
}
Вы могли бы получить доступ к JButton из ClassA с помощью ClassB.myJButton
0
Вы можете Наследовать классы или использовать один один:
public class Example{
public static void main(String []args){
JFrame wnd = new JFrame();
//edit your frame...
//...
wnd.setContentPane(new CustomPanel()); //Panel from your class
wnd.getContentPane().add(new CustomButton()); //Button from another class
//Or this way:
wnd.setContenPane(new Items().CustomPanel());
wnd.getContentPane().add(new Items().CustomButton());
}
static class CustomButton extends JButton{
public CustomButton(){
//Implementation...
setSize(...);
setBackground(...);
addActionListener(new ActionListener(){
//....
});
}
}
static class CustomPanel extends JPanel{
public CustomPanel(){
//Implementation...
setSize(...);
setBackground(...);
OtherStuff
//....
}
}
static class Items{
public JButton CustomButton(){
JButton button = new JButton();
//Edit your button...
return button;
}
public JPanel CustomPanel(){
JPanel panel = new JPanel();
//Edit your panel...
return panel;
}
}
}
Смежные вопросы
- 1. Как добавить JButton в JPanel из другого класса?
- 2. Добавьте actionListener в JButton из другого класса
- 3. размещение jpanel поверх jpanel из другого класса
- 4. Добавить JButton в JPanel
- 5. Как добавить Jbutton из другого класса в основной класс
- 6. Добавить объект из другого класса к JPanel
- 7. Как добавить JPanel из другого класса в кадр
- 8. Проблемы с вызовом JPanel из другого класса
- 9. Как наблюдать JButton из другого класса?
- 10. Как добавить JPanel из другого класса в существующий кадр
- 11. Как добавить JPanel в контейнер из другого класса?
- 12. Как добавить jbutton в jpanel
- 13. JButton Action Listener из другого класса
- 14. добавить панель в кадр из другого класса?
- 15. Наличие JButton открывает новый JPanel
- 16. Вызов JPanel из другого JPanel
- 17. Поместите один JPanel на другой JPanel из другого класса Java
- 18. удаление jPanel из другого класса
- 19. Почему мой JButton не добавит JPanel из отдельного класса?
- 20. Невозможно добавить actionlistener из другого класса
- 21. Добавить jtextarea из другого класса
- 22. Как добавить JButton к JFrame из другого класса
- 23. Добавление JPanel из другого класса в JFrame При нажатии кнопки
- 24. ActionListener для вызова другого Jpanel из Jpanel
- 25. Позвоните JPanel в другой JPanel из другого класса
- 26. Несколько JButton actionlistener из другого класса
- 27. Как добавить JPanel в центр другого JPanel?
- 28. Настройка JPanel как нового JPanel из другого класса
- 29. JPanel из другого класса обыкновение появляться в главном JFrame
- 30. Размер вопроса JPanel из другого класса внутри JFrame основного класса