-44 / 2 / 3
Регистрация: 22.12.2015
Сообщений: 508

Как передать переменную из одного класса в другой

21.09.2018, 23:39. Показов 2261. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть окружность, а по ней в свою очередь движется точка.

Часть кода:

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import javax.swing.*;
 
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.geom.Ellipse2D;
 
public class Test extends JComponent {
    private double angle;
 
 
    @Override
    protected void paintComponent(Graphics g) {
 
       //здесь задаем параметры окружности и точки
        
    }
 
    private Shape circle(double x, double y, double r) {
        return new Ellipse2D.Double(x - r, y - r, 2 * r, 2 * r);
    }
 
    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                JFrame frame = new JFrame("Point on circle");
                JLabel lb = new JLabel ("Введите скорость:");
                lb.setFont(new Font("TimesNewRoman", Font.PLAIN, 17));
                JTextField t_vvod = new JTextField("", 20);
                t_vvod.setFont(new Font("TimesNewRoman", Font.PLAIN, 17));
                JButton bt = new JButton("Ввести");
                bt.setFont(new Font("TimesNewRoman", Font.PLAIN, 17));
                frame.add(lb);
                frame.add(t_vvod);
                frame.add(bt);
                frame.add(new Test());
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setSize(400, 500);
                frame.setVisible(true);
                frame.setResizable(false);
                lb.setBounds(5, 395, 250, 50);
                t_vvod.setBounds(160, 410, 210, 23);
                bt.setBounds(5, 435, 365, 20);
                
                bt.addActionListener(new ActionListener() {                    //Здесь происходит обработка нажатия кнопки
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        String str = t_vvod.getText();
                        Double speed = Double.parseDouble(str);
                        
                    }
                    
                });
               
            }
            
        });
        
    }    
    
    public Test() {       //****
        angle = 0;
        Timer timer = new Timer(30, new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                angle += 0.5;   //скорость
                repaint();
            }
        });
        timer.start();
    }
    
    
}
В конечном счете у нас будет окружность, по ней будет двигаться точка, а скорость мы будем вводить в поле JTextField. Но есть проблема. Скорость задается в месте, которое я пометил как "****", а обработка нажатия в другом классе. Соответственно в классе "****" переменную, в которую записалось значение с поля, не будет видно. Как быть в данной ситуации?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.09.2018, 23:39
Ответы с готовыми решениями:

Переменную из одного класса в другой
Здравствуйте. Сам я новичок со стажем учил все языки программирования, ни в одном не разбираюсь, но сейчас дошло до дипломной работы....

Передать число из одного класса в другой
Решил проверить, получится ли написать вычислялку по формуле. Вроде все сделал, но не могу передать число из одного класса в другой. Как...

Как можно передать значения переменных из одного класса в другой?
1) Не могу понять, почему в Borland JBuilder создавая два Фрейма в разных классах при запуске я вижу только одно. package temp1; ...

2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.09.2018, 03:28
Лучший ответ Сообщение было отмечено Imperion как решение

Решение

Imperion, объяви public static переменную...
1
-44 / 2 / 3
Регистрация: 22.12.2015
Сообщений: 508
22.09.2018, 09:12  [ТС]
Разобрался, спасибо!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.09.2018, 09:12
Помогаю со студенческими работами здесь

Передача массива из одного класса в другой
Есть 2 файла классов и в одном объявляется массив n элементов. Как его передать во второй класс? При обращении к элементам массива мне...

Передать переменную на другой окно
Всем добрый день! Подскажите пожалуйста как можно передать переменную в другое окно JavaFX. К примеру в первом окне у меня содержится ...

Как передать переменную из одного класса в другой?
Доброго времени суток. Говорю сразу, я новичек. Только начинаю свой тернистый путь. У меня возникла проблема, не могу понять как передать...

Передать переменную из одного класса в другой
Есть два класса Form1 и KV,KV унаследовано от Form1.НЕобходимо передать переменную из класса KV в класс Form1.Как это реализовать? Буду...

Как передать переменную из одного MovieClip в другой?
Как передать переменную из одного MovieClip в другой? Заранее, спасибо.


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

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

Новые блоги и статьи
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
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 —. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru