Getting the Items in a JList Component

// Create a list String[] items = {"A", "B", "C", "D"}; JList list = new JList(items); // Get number of items in the list int size = list.getModel().getSize(); // 4 // Get all item objects for (int i=0; i<size; i++) { Object item = list.getModel().getElementAt(i); }
These methods are used to find an item:
// The prefix is case-insensitive String prefix = "b"; // Search forward, starting from index 0, looking for an item that starts with "b" int start = 0; javax.swing.text.Position.Bias direction = javax.swing.text.Position.Bias.Forward; int itemIx = list.getNextMatch(prefix, start, direction); // Search backward, starting from the last item, looking for an item that starts with "b" start = list.getModel().getSize()-1; direction = javax.swing.text.Position.Bias.Backward; itemIx = list.getNextMatch(prefix, start, direction);
These methods can be used to find the range of visible items:
// Get number of visible items int visibleSize = list.getVisibleRowCount(); // Get index of first visible item itemIx = list.getFirstVisibleIndex(); if (itemIx < 0) { // List is either not visible or there are no items } // Get index of last visible item itemIx = list.getLastVisibleIndex(); if (itemIx < 0) { // List is either not visible or there are no items }

Post a comment

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image. Ignore spaces and be careful about upper and lower case.