Строка переключателя не отображается при нажатии опции комбинированного списка - PullRequest
0 голосов
/ 27 декабря 2018

Я тестирую этот код, чтобы убедиться, что он работает так, как задумано, прежде чем я закончу остальные дела коммутатора.Приложение работает нормально, но когда выбрана опция поля со списком, она должна отображать строку в зависимости от случая.Я не могу понять, почему это не работает.Я пытался отладить, но, честно говоря, я не видел никаких проблем.Любая помощь будет отличной.Вот код:

 package combobox;

 import java.awt.*;
 import java.awt.event.*;
 import javax.swing.*;

 public class SolicitorComBox extends JFrame implements ActionListener {
 String[] MuniArray = {"Allepo", "Avalon",};
 JComboBox MuniList = new JComboBox (MuniArray);
 JLabel lblText = new JLabel();

 public static void main(String[] args) {
    SolicitorComBox fr = new SolicitorComBox();
    centerFrame(fr);
    fr.setVisible(true);


 }
 private static void centerFrame(SolicitorComBox fr) {


 }
 public SolicitorComBox() {
    setLayout (new FlowLayout());
    setSize (400, 300);
    setTitle ("Solicitor Search");
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    MuniList.setSelectedIndex(0);
    MuniList.addActionListener(this);
    add(MuniList);
    add(lblText);

}
public void actionPerformed(ActionEvent e) {
    if (e.getSource() == MuniList) {
        JComboBox cb = (JComboBox).e.getSource();
        String msg = (String)cb.getSelectedItem();
        switch (msg) {
            case "Allepo": lblText.setText("The attorney is Joe!");
            break;
            case "Avalon": lblText.setText("The attorney is Dana!");
            break;

1 Ответ

0 голосов
/ 27 декабря 2018

В actionPerformed() изменить

(JComboBox).e.getSource();

на

(JComboBox) e.getSource();

вы должны выполнить приведение к JComboBox

...