3 / 3 / 1
Регистрация: 11.04.2011
Сообщений: 121

Рисование jframe & jpanel

31.03.2013, 21:30. Показов 3930. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Я решил GUI начать изучать, и у меня куча вопросов.
1) Я пока, что просто создал фрэйм и "игрался" с кнопками и лэбами, но решил построить график, полином закрашенный, он строиться, но лэб и кнопки пропали, фон стал прозрачным, что за дела?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package paintingandstroking;
import java.awt.*;
import java.awt.geom.*;
import java.awt.Polygon;
import java.awt.Dimension;
import javax.swing.JLabel;
//import java.awt.Toolkit;
import javax.swing.JFrame;
public class PaintingAndStroking
    extends  JFrame{
  public static void main(String[] args) {
    PaintingAndStroking f = new PaintingAndStroking();
    f.setTitle("PaintingAndStroking v1.0");
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    int height = screenSize.height;
    int width = screenSize.width;
    f.setSize(600, 300);
    f.setLocation(width/2 - 300, height/2 - 150);
    f.setDefaultCloseOperation(EXIT_ON_CLOSE);
    f.setResizable(false); 
    f.setVisible(true);
    
    
    
  }
  
  @Override
  public void paint(Graphics g) {
    Graphics2D g2 = (Graphics2D)g;
    int[] X = {0, 5, 100, 0};
    int[] Y = {0, 150, 100, 0};
    Polygon mypoly = new Polygon(X, Y, 4);
    
    g2.setStroke(new BasicStroke(5));
    g2.draw(mypoly);
    g2.fill(mypoly);
}
}
Добавлено через 2 часа 19 минут
2)Где-то видел как можно рисовать не через переопред метода ПАИНТ, а добавлением каких-то компонентов на фрэйм! Так разве возможно?

3)Почему иногда так создают фрэймы
Java
1
2
3
4
5
6
7
8
public static void main(String[] args) {
          javax.swing.SwingUtilities.invokeLater(new Runnable() {
               public void run() {
                    JFrame.setDefaultLookAndFeelDecorated(true);
                    createGUI();
               }
          });
     }
Добавлено через 1 час 31 минуту
4)Как на фрэйм добавить отдельно (Слева) поле для рисования, а справа, ползунок, лэбл и подобное
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.03.2013, 21:30
Ответы с готовыми решениями:

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

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

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

4
 Аватар для exiqa
487 / 333 / 71
Регистрация: 24.12.2011
Сообщений: 591
31.03.2013, 22:33
годные статьи. Найдете там ответы на ваши вопросы
1)
2)
1
 Аватар для KiraLis39
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 346
20.09.2015, 09:21
Цитата Сообщение от mezlogo Посмотреть сообщение
закрашенный, он строиться, но
русский бы для начала выучить, потом Java -_-

Цитата Сообщение от mezlogo Посмотреть сообщение
переопред метода ПАИНТ
не ПАЙНТ, а ПЕЙНТ

Цитата Сообщение от mezlogo Посмотреть сообщение
public static void main(String[] args) {
* * * * * javax.swing.SwingUtilities.invokeLater(n ew Runnable() {
* * * * * * * *public void run() {
* * * * * * * * * * JFrame.setDefaultLookAndFeelDecorated(tr ue);
* * * * * * * * * * createGUI();
* * * * * * * *}
* * * * * });
* * *}
invoke, точно не знаю, помогает избежать конфликтов каких-то с многопоточностью.
а дефолт-декор это установка внешнего оформления, к примеру, как твой рабочий стол. Стиль оформления системный.
0
22.09.2015, 08:21

Не по теме:

Цитата Сообщение от KiraLis39 Посмотреть сообщение
помогает избежать конфликтов каких-то с многопоточностью
если не можешь дать вразумительный ответ, то лучше промолчать. Тем более, что ответы на все заданные вопросы имеются по приведённым ссылкам.

И это... некропостинг - не есть гуд.

0
 Аватар для KiraLis39
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 346
22.09.2015, 11:42
Спасибо за ценную информацию. Лично мне такого ответа было бы достаточно от другого пользователя.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.09.2015, 11:42
Помогаю со студенческими работами здесь

JPanel в JFrame
Ув. форумчане, необходимо нарисовать сетку с лайнов. И на пересечении этих линий ставить точку. Вот КОД: package main; import...

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

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

Java GUI, JPanel, JFrame
Здравствуйте, вообщем цель программы нарисовать круг с разным цветом, который выбираем из JComboBox и после нажатия кнопки круг должен...

JApplet, JFrame, JPanel и JOptionPane
Дорогие форумчане! Помогите, пожалуйста, разобраться чем отличаются JApplet, JFrame, JPanel и JOptionPane. И для каких целей они...


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

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

Новые блоги и статьи
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru