Добавить функционал - Java
Формулировка задачи:
Вот есть у меня такая вот форма, задача - в выпадающем меню клацаю по цифре, и она добавляется в JLabel слева, одновременно если есть такая же цифра в другом JLabel то она оттуда удаляеться, нужно чтобы в полях были только разные цифры. Я такого накрутил, что аж показывать страшно, помогите сделать по уму. Желательно с применение MVC. Я не прошу готовый код( хотя был бы рад этому).
public class Main extends JFrame { private JPanel contentPane; private String[] string ={"1", "2", "3", "4", "5", "6", "7", "8", "9", "10"}; private JLabel lblNewLabel; private JLabel label; private String string1 = "4, 5, 6"; private String string2 = "1, 2, 3"; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Main frame = new Main(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public Main() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 237); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); lblNewLabel = new JLabel(string1); lblNewLabel.setBounds(46, 28, 158, 35); contentPane.add(lblNewLabel); label = new JLabel(string2); label.setBounds(46, 74, 158, 35); contentPane.add(label); JComboBox comboBox = new JComboBox(string); comboBox.setBounds(340, 35, 62, 20); contentPane.add(comboBox); JComboBox comboBox_1 = new JComboBox(string); comboBox_1.setBounds(340, 81, 62, 20); contentPane.add(comboBox_1); JLabel lblNewLabel_1 = new JLabel("\u2116"); lblNewLabel_1.setBounds(10, 32, 19, 27); contentPane.add(lblNewLabel_1); JLabel label_1 = new JLabel("\u2116"); label_1.setBounds(10, 78, 19, 27); contentPane.add(label_1); } }
Решение задачи: «Добавить функционал»
textual
Листинг программы
import java.awt.BorderLayout; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.JComboBox; import javax.swing.JFrame; public class Combos extends JFrame { private static final long serialVersionUID = 1L; JComboBox cbOne; JComboBox cbTwo; Combos() { setSize(400, 400); setLocationRelativeTo(null); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); cbOne = new JComboBox(new String[] { "One" }); cbTwo = new JComboBox(new String[] { "Two" }); cbOne.setName("name"); add(cbOne, BorderLayout.NORTH); add(cbTwo, BorderLayout.SOUTH); cbOne.addMouseListener(new MyMouseListener()); cbTwo.addMouseListener(new MyMouseListener()); setVisible(true); } public static void main(String[] args) { new Combos(); } private class MyMouseListener implements MouseListener { @Override public void mouseClicked(MouseEvent evnt) { } @Override public void mouseEntered(MouseEvent evnt) { JComboBox combo = (JComboBox) evnt.getComponent(); System.out.println(combo.getName()); System.out.println(combo.getSelectedItem()); } @Override public void mouseExited(MouseEvent evnt) { } @Override public void mousePressed(MouseEvent evnt) { } @Override public void mouseReleased(MouseEvent evnt) { } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д