2017-01-21 10 views
-2

У меня есть JList, и я хочу получить информацию о Элементе. Это мой вывод toString, и я хочу получить элемент Kundennummer.Я не могу выйти из Элемента JList?

Privatkunde [Vorname = Max | Nachname = Mustermann | Telefonnummer = 017632447658 | E-Mail = [email protected] | Geburtsdatum = 08.03.1993 | Kundennummer = KU543-10] Adresse [Adresszeile 1 = Maxstraße, Adresszeile 2 = 22, PLZ = 12139, Орт = Berlin]

Вот мой код, как я хочу, чтобы продолжить его, но он делает не работа.

jL.addMouseListener(new MouseAdapter() { 
    public void mouseClicked(MouseEvent evt){ 
     if(evt.getClickCount()==2 && evt.getButton() == MouseEvent.BUTTON1){ 
      int index = jL.locationToIndex(evt.getPoint()); 

      String ausgewaehlteKdnr = model.getElementAt(index).substring(30,2); 
      System.out.println(ausgewaehlteKdnr); 
      jD.dispose(); 
     } 
    } 
}); 

Это дает мне ошибку. Я думаю, что это просто счет Приваткунде и закончить, но это не то, что я хочу. Я рад, если кто-то может сказать мне, как я могу исправить это или лучший способ получить информацию

java.lang.StringIndexOutOfBoundsException: индекс строки из диапазона: -28

+0

См. 'Подстрока (30,2)'. –

+0

Да, и я хочу вытащить специальную строку из строки, я просто знаю этот метод – MaskulinerJunge

+0

Почему вы используете метод toString, у модели, очевидно, есть POJO, почему бы не использовать объект напрямую? 'Privatkunde obj = (Privatkunde) model.getElementAt (index)' ??? – MadProgrammer

ответ

-1

подстроку (30, 2) неверно. Первым параметром является beginIndex, а вторым параметром является endIndex. Вот почему исключение, которое вы видите, говорит о «-28». Попробуйте инвертировать два параметра: подстрока (2,30).

+0

Да, это то, что я понимаю из Исключения 2. Но если я просто хочу, чтобы эта линия Kundennummer = KU543-10, означает ли это, что это не может быть разделено на метод String. – MaskulinerJunge

+1

@MaskulinerJunge: для лучшей помощи создайте и опубликуйте действительный [mcve]. –

+0

@MaskulinerJunge: Также: 1) Вы не используете 'toString()' Item, 2), используя toString, а subString выглядит как опасный kludge. Лучше было бы получить фактический объект и вызвать его методы для извлечения необходимой вам информации. –

 Смежные вопросы

  • Нет связанных вопросов^_^