Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
 Аватар для Alik_msk
3 / 3 / 2
Регистрация: 13.01.2014
Сообщений: 21

Изменить текст группе JButton исходя из выбора в JComboBox

14.01.2014, 21:36. Показов 2209. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
И уж чего только не подключал и UpdateUI(), revalidate() и к панелям и к фрейму прикручивал..ну хочет заразная и всё((
И так на четырёх панелях находиться по 5 кнопок, после выбора JComboBox должен измениться текст на кнопках, но, по непонятным причинам отлавливается только JComboBox, так как названия остаются и не меняются((
Много )авнокода, но пока сойдет и так, просто хотелось понять почему так происходит.
после выбора JComboBox, попробуйте навести с зажатой левой кнопкой мыши(released тоже не работает(() на первые три кнопки(1,2,3) и посмотрите на выводы в консоли((


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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
package manadgerfile1;
 
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.*;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
 
import javax.swing.SwingUtilities;
 
public class ManagerBeta extends JFrame {
         
    public JButton jb0,jb1,jb2,jb3,jb4,jb5,jb6,jb7,jb8,jb9,jb10,jb11,jb12,jb13,jb14,jb15,jb16,jb17,jb18,jb19; 
    private JComboBox jcb;
    private JPanel jP1, jP2, jP3,jP4;
  
     String ViborPut="";
     static String user_selectable_directory="";
     static String user_selection_category="";
 
    ManagerBeta() {
 
      final JFrame myOkno = new JFrame("art manager");
       myOkno.getContentPane().setLayout(new BorderLayout());
       myOkno.setSize(600,600);
       myOkno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      
      final JPanel jPanelTop = new JPanel();
        jPanelTop.setPreferredSize(new Dimension(600,100));
          jPanelTop.setBorder(BorderFactory.createLineBorder(Color.blue));
      JPanel jPanelCenter= new JPanel();
       jPanelCenter.setPreferredSize(new Dimension(380,380));
         jPanelCenter.setBorder(BorderFactory.createLineBorder(Color.darkGray));  
      final JPanel jPanelBoton= new JPanel();
        jPanelBoton.setPreferredSize(new Dimension(600,100));
            jPanelBoton.setBorder(BorderFactory.createLineBorder(Color.RED));
      final JPanel jPanelLeft = new JPanel();
          jPanelLeft.setBorder(BorderFactory.createLineBorder(Color.GREEN));
        jPanelLeft.setPreferredSize(new Dimension(100,500));
      final JPanel jPanelRight = new JPanel();
          jPanelRight.setBorder(BorderFactory.createLineBorder(Color.YELLOW)); 
        jPanelRight.setPreferredSize(new Dimension(100,500));
      
        myOkno.add(jPanelTop,BorderLayout.NORTH);
        myOkno.add(jPanelBoton, BorderLayout.SOUTH);
        myOkno.add(jPanelCenter,BorderLayout.CENTER);
        myOkno.add(jPanelLeft,BorderLayout.WEST);
        myOkno.add(jPanelRight,BorderLayout.EAST);
        
       final JButton jb0 = new JButton("0");final JButton jb1 = new JButton("1"); final JButton jb2 = new JButton("2"); final JButton jb3 = new JButton("3"); final JButton jb4 = new JButton("4");
        final JButton jb5 = new JButton("5");final JButton jb6 = new JButton("6");final JButton jb7 = new JButton("7");final JButton jb8 = new JButton("8");final JButton jb9 = new JButton("9");final JButton jb10 = new JButton("10");
        final JButton jb11 = new JButton("11"); final JButton jb12 = new JButton("12"); final JButton jb13 = new JButton("13"); final JButton jb14 = new JButton("14");
       final  JButton jb15 = new JButton("15");final JButton jb16 = new JButton("16");final JButton jb17 = new JButton("17");final JButton jb18 = new JButton("18");final JButton jb19 = new JButton("19");
jb0.setPreferredSize(new Dimension(60,60));jb1.setPreferredSize(new Dimension(60,60));jb2.setPreferredSize(new Dimension(60,60));jb3.setPreferredSize(new Dimension(60,60));jb4.setPreferredSize(new Dimension(60,60));jb5.setPreferredSize(new Dimension(60,60));
jb6.setPreferredSize(new Dimension(60,60));jb7.setPreferredSize(new Dimension(60,60));jb8.setPreferredSize(new Dimension(60,60));jb9.setPreferredSize(new Dimension(60,60));jb10.setPreferredSize(new Dimension(60,60));jb11.setPreferredSize(new Dimension(60,60));
jb12.setPreferredSize(new Dimension(60,60));jb13.setPreferredSize(new Dimension(60,60));jb14.setPreferredSize(new Dimension(60,60));jb15.setPreferredSize(new Dimension(60,60));jb16.setPreferredSize(new Dimension(60,60));jb17.setPreferredSize(new Dimension(60,60));
jb18.setPreferredSize(new Dimension(60,60));jb19.setPreferredSize(new Dimension(60,60));
 
jPanelLeft.add(jb0);jPanelLeft.add(jb1);jPanelLeft.add(jb2);jPanelLeft.add(jb3);jPanelLeft.add(jb4);
jPanelTop.add(jb5); jPanelTop.add(jb6); jPanelTop.add(jb7); jPanelTop.add(jb8); jPanelTop.add(jb9);jPanelRight.add(jb10);
jPanelRight.add(jb11);jPanelRight.add(jb12);jPanelRight.add(jb13);jPanelRight.add(jb14);jPanelBoton.add(jb15);jPanelBoton.add(jb16);jPanelBoton.add(jb17);
jPanelBoton.add(jb18);jPanelBoton.add(jb19);
//
//JRadioButton jRB1= new JRadioButton("ch1");JRadioButton jRB2= new JRadioButton("ch2");JRadioButton jRB3= new JRadioButton("ch3");JRadioButton jRB4= new JRadioButton("ch4");JRadioButton jRB5= new JRadioButton("ch5");
    // jPanelTop.add(jRB1); jPanelTop.add(jRB2); jPanelTop.add(jRB3); jPanelTop.add(jRB4); jPanelTop.add(jRB5);
final JComboBox jcb = new JComboBox();
 jcb.addItem("art");
 jcb.addItem("landscapes");
 jcb.addItem("illustrate");
 jcb.addItem("ornament");
 jcb.addItem("spaers");
 jcb.addItem("animal");
jPanelTop.add(jcb,BorderLayout.WEST);
 
jcb.addActionListener(new ActionListener(){
       
 public void actionPerformed(ActionEvent event){
 String item =(String) jcb.getSelectedItem();
System.out.println("выбрали "+item);
user_selectable_directory=item;
 
switch (item){
    case "art":
jb0.setText("art0");jb1.setText("art1");jb2.setText("art2");   jb3.setText("art3");jb4.setText("art4");jb5.setText("art5");jb6.setText("art6");   jb7.setText("art7");jb8.setText("art8");jb9.setText("art9");jb10.setText("art10");jb11.setText("art11");jb12.setText("art12");jb13.setText("art13");jb14.setText("art14");jb15.setText("art15");jb16.setText("16");jb17.setText("art17");jb18.setText("art18");jb19.setText("art19");
    case "landscapes":
jb0.setText("камни"); jb1.setText("вода");   jb2.setText("атмасферные");jb3.setText("небо");   jb4.setText("космос");     jb5.setText("деревья");   jb6.setText("поля");     jb7.setText("небо");jb8.setText("цветы");jb9.setText("космос");jb10.setText("л10");jb11.setText("л11");jb12.setText("л12");jb13.setText("л13");jb14.setText("л14");jb15.setText("л15");jb16.setText("л16");jb17.setText("л17");jb18.setText("л18");jb19.setText("л19");
    case "illustrate":
         jb0.setText("аниме"); jb1.setText("комиксы");jb2.setText("АртБук");     jb3.setText("Дисней"); jb4.setText("2D");         jb5.setText("3D");        jb6.setText("праздники");jb7.setText("scrap");jb8.setText("АгитПл");jb9.setText("винтаж");jb10.setText("дети");jb11.setText("Архитект");jb12.setText("Деревня");jb13.setText("Песонажи");jb14.setText("профессия");jb15.setText("животные");jb16.setText("оживленное");jb17.setText("сказки");jb18.setText("unpel");jb19.setText("ш19");
    case "ornament":
         jb0.setText("o0");jb1.setText("o1");jb2.setText("o2");jb3.setText("o3");jb4.setText("o4");jb5.setText("o5");jb6.setText("o6");jb7.setText("o7");jb8.setText("o8");jb9.setText("o9");jb10.setText("o10");jb11.setText("o11");jb12.setText("o12");jb13.setText("o13");jb14.setText("o14");jb15.setText("o15");jb16.setText("o16");jb17.setText("o17");jb18.setText("o18");jb19.setText("o19");
    case "spaers":    
         jb0.setText("волосы");jb1.setText("руки");jb2.setText("лицо");jb3.setText("сидячие");jb4.setText("лежа");jb5.setText("стоя");jb6.setText("ккк");jb7.setText("ккк");jb8.setText("кк");jb9.setText("ккк");jb10.setText("волосы");jb11.setText("руки");jb12.setText("лицо");jb13.setText("сидячие");jb14.setText("лежа");jb15.setText("стоя");jb16.setText("ккк");jb17.setText("ккк");jb18.setText("кк");jb19.setText("ккк");
    case "animal":    
         jb0.setText("копытные");jb1.setText("кошки");jb2.setText("рыбы");jb3.setText("птицы");jb4.setText("насекомые");jb5.setText("Африка");jb6.setText("рептилии");jb7.setText("грызуны");jb8.setText("медведи");jb9.setText("лисы");jb10.setText("волки");jb10.setText("куньи");jb11.setText("бобры-выдры");jb12.setText("ж12");jb13.setText("ж13");jb14.setText("ж14");jb15.setText("ж15");jb16.setText("ж16");jb17.setText("ж17");jb18.setText("ж18");jb19.setText("ж19");
  // jPanelTop.updateUI();jPanelLeft.updateUI();jPanelRight.updateUI();jPanelBoton.updateUI();                                      
}
myOkno.revalidate();
//jPanelTop.revalidate();
//jPanelLeft.revalidate();//updateUI();
//jPanelRight.revalidate();//updateUI();
//jPanelBoton.revalidate();//updateUI();/**/
 //jb1.setText("uuuu");
jb0.addMouseListener(new MouseHandler());
jb1.addMouseListener(new MouseHandler());
jb2.addMouseListener(new MouseHandler());
jb3.addMouseListener(new MouseHandler());
 }          
 });
 
myOkno.setVisible(true);
 
} 
    public static void main(String[] args) {
        //
        SwingUtilities.invokeLater(new Runnable(){
            public void run(){
                new ManagerBeta();
            }
        });
        //
    }
 
    private static class MouseHandler extends MouseAdapter {
//MouseMotionListener, MouseRelease
         public void mouseEntered(MouseEvent me)
          {
             // При перемещении мыши над кнопкой
             // 
               String navodka= me.getComponent().toString();//узнаем на какую кнопку навел пользователь
             //чистим сторку от хлама, чтобы узнать текст на кнопки
               int start=navodka.indexOf("text=")+5;
               int end=navodka.indexOf(",defaultCapable");
             user_selection_category=navodka.substring(start,end);//название кнопки лежит в user_selection_category
               System.out.println("Mouse is over "+navodka.substring(start,end));
             System.out.println("выбор "+ "C:Dowlods/"+user_selectable_directory+"/"+user_selection_category);
          }
       
      //  public void mouseEntered(MouseEvent me) {
      // System.out.println("Кнопка мыши entered");
   // }
         
        public void mouseRealesed(MouseEvent event){
 
                System.out.println("Кнопка мыши realesed");
        }
    }
    
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.01.2014, 21:36
Ответы с готовыми решениями:

Не сворачивать JComboBox после выбора элемента
Здравствуйте! Как сделать чтобы список jcombobox не сворачивался после выбора элемента?

JComboBox, неправильная перерисовка после выбора
Добрый день. Столкнулся вот с такой проблемой: после выбора объекта в JComboBox он неправильно перерисовывается. Пример: ...

Label + jbutton. Следует текст, затем текст с кнопкой
пример в квадрает кнопка. Можно отрисовать, но может кто-то иначе решал проблему.

2
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
15.01.2014, 17:21
Первое, что сразу заметно: в операторе switch/case (87 строка и дальше), ни в одной ветке case в конце break; не стоит...
1
 Аватар для Alik_msk
3 / 3 / 2
Регистрация: 13.01.2014
Сообщений: 21
17.01.2014, 21:54  [ТС]
Бывает))) Зашуршала
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.01.2014, 21:54
Помогаю со студенческими работами здесь

JComboBox: кнопка в выпадающем списке для выбора элемента
Доброго времени суток. Пытаюсь сделать следующее: имеется экземпляр JComboBox. При нажатии на него выпадает список неких элементов....

Как изменить рисунок JButton
Как изменить рисунок JButton? Я использую код JButton B2=new JButton(new ImageIcon("buttonIcon.png")); Но картинка не полность...

Как изменить цвет рамки JButton?
Вот настройки кнопки: close.setBounds(getWidth() - 25, 0, 25, 25); close.setBorderPainted(false); ...

Как изменить форму кнопки JButton
Как изменить форму кнопки JButton? Ну, например, что бы кнопка была крулая, овальная и т.д.

Как изменить выбранный элемент в JComboBox?
В DefaultListModel есть setElementAt и все прекрасно, как изменить элемент по индексу в JComboBox?


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
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 с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru