Форум программистов, компьютерный форум, киберфорум
Java: GUI, Графика
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/22: Рейтинг темы: голосов - 22, средняя оценка - 4.55
2 / 2 / 0
Регистрация: 22.09.2012
Сообщений: 202
1

Как добавить JPanel к JFrame и рисовать на нем

27.02.2014, 16:41. Показов 4467. Ответов 3
Метки нет (Все метки)

ПРивет всем, я нашел в интернете кучу вариантов того как можно это сделать. Но дело в том что JFrame я создаю не в коде, а добавляя его к проекту. В этом случае, после того, как я создам производный класс от JPanel, напишу там метод paintComponent, я добавляю его к JFrame, но ничего не рисуется( Если же я создаю JFrame в коде, то все получается, вот пример кода:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import javax.swing.*;
    import java.awt.*;
    import java.awt.geom.*;
    public class X  {
        public static void main( String [] args ) {
             JFrame frame = new JFrame();
             frame.add( new JPanel() {
                 public void paintComponent( Graphics g ) {
                    super.paintComponent(g);
                    Graphics2D g2 = (Graphics2D)g;
 
                    Line2D line = new Line2D.Double(10, 10, 40, 40);
                    g2.setColor(Color.blue);
                    g2.setStroke(new BasicStroke(10));
                    g2.draw(line);
                 }
            });
            frame.setVisible( true );
        }
    }
Пожалуйста, подскажите, что нужно сделать с JFrame? Просто всякие кнопочки, менюшки и пр. удобнее в конструкторе набрасывать, чем писать код
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.02.2014, 16:41
Ответы с готовыми решениями:

Как правильно задать размер JPanel чтобы JFrame при pack() сжимался до размеров JPanel
Подскажите как правильно задать размер JPanel чтобы JFrame при pack() сжимался до размеров JPanel,...

Замена JPanel на JPanel в JFrame
У меня есть 3 класса. Первый класс Main наследуется от JFrame и в конструкторе установка размера и ...

Проходил ли кто-то видео-курс techpro? Как у них получилось JFrame в JFrame добавить
Проходил ли кто-то видео-курс techpro? Как у них получилось JFrame в JFrame добавить? ...

JPanel в JFrame
Ув. форумчане, необходимо нарисовать сетку с лайнов. И на пересечении этих линий ставить точку....

3
Супер-модератор
5854 / 2617 / 1297
Регистрация: 04.03.2013
Сообщений: 5,565
Записей в блоге: 1
27.02.2014, 18:01 2
Однажды в этой теме я столкнулся с проблемой похожего характера.
Тогда мне ответили так:
Цитата Сообщение от Drygba Посмотреть сообщение
Пока вы не сможете создавать форму в ручную и не выучите как все это взаимодействует друг с другом - забудьте о редакторе.
Сейчас я понимаю, что были полностью правы...
В вашем случае чтобы то, что вы хотите сделать возымело эффект, вам нужно создать наследника класса JPanel и работать с ним, чтобы всё рисовалось... То есть примерно так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class MyJPanel extends JPanel {
  MyJPanel() {
    super();
    //...
  }
}
 
...
public class X  {
  public static void main( String [] args ) {
    JFrame frame = new Frame();
    MyJPanel pnl = new MyJPanel();
    frame.add(pnl) {
    //вот на ней можно рисовать...
    
...
1
2 / 2 / 0
Регистрация: 22.09.2012
Сообщений: 202
27.02.2014, 20:45  [ТС] 3
в студии не приходилось руками что-либо писать и проблем никогда не возникало Значит другого варианта нету?
0
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 346
23.09.2015, 23:27 4
Что? Есть редактор?! где? какой? ..хотя, в принципе, интересней делать самому.. пока не надоест -_-
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2015, 23:27

Помощь в написании контрольных, курсовых и дипломных работ здесь.

2 JPanel на 1-ом JFrame
Есть класс (Main), который наследует JFrame. Есть 2-а других класса, которые наследуют JPanel...

Перетаскивание JPanel во JFrame
Всем привет. у меня есть класс который расширяет JPanel. Потом в основном классе я создаю экземпляр...

JFrame&JPanel
Здравствуйте!возник такой вопрос-обязательно ли использовать в программе JFrame или можно обойтись...

Фиксация размера JPanel на JFrame
Здравствуйте. Подскажите, пожалуйста, как сделать так, чтобы панель занимала не весь JFrame, а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.