Các anh/ chị cho em hỏi: muốn thanh cuộn tự động kéo xuống khi nhập dữ liệu vào thì làm sao ạ ? chứ em thấy khi nhập dữ liệu thì nó không tự động cuộn xuống theo mà mình phải kéo xuống mới thấy được… em thấy không ổn…
Hỏi về thanh cuộn của JList trong java
em vẫn không hiểu cách dùng của nó thế nào ạ ?
em code thế này: List.ensureIndexlsVisible(List.setSelectedIndex());
nó vẫn như cũ… em không biết phải dùng như thế nào cho đúng…
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class Testing extends JFrame implements ActionListener
{
DefaultListModel listModel = new DefaultListModel();
JList list = new JList(listModel);
JScrollPane sp = new JScrollPane(list);
JButton btn = new JButton("Add");
int ctr = 1;
public Testing()
{
setTitle("Testing");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocation(400,300);
Container frame = getContentPane();
JPanel jp = new JPanel();
sp.setPreferredSize(new Dimension(100,200));
jp.add(sp);
btn.addActionListener(this);
frame.add(jp,BorderLayout.NORTH);
frame.add(btn,BorderLayout.SOUTH);
pack();
}
public void actionPerformed(ActionEvent ae)
{
listModel.addElement(""+ctr++);
list.ensureIndexIsVisible(listModel.size()-1);
}
public static void main( String[] args){new Testing
em cảm ơn anh nhiều ạ, em làm dc rồi… à mà anh ơi… nhân tiện cho em hỏi cách lấy phần tử của JList với anh ơi… ví dụ như lấy phần tử thứ i trong JList ấy ạ…
Em muốn lấy kiểu gì?
Có 2 cách thôi.
GetselectedIndex
getselectedIndex() // return -1 if no element selected
getElementAt(i);
Object o = theList.getModel().getElementAt(index); // return object at index
em có code thế này:
‘’’
if(evt.getKeyCode() == evt.VK_ENTER){
model.addElement(tfNhapSo.getText());
A[i] = Integer.parseInt(tfNhapSo.getText());
i++;
}
List.setModel(model);
List.ensureIndexIsVisible(model.size() - 1);
}
‘’’
ví dụ như em muốn lấy phần tử thứ 5 trong List thì làm sao anh ?? lấy ra để kiểm tra xem phần tử đó có phải số nguyên tố không, nếu là số nguyên tố thì bôi đen số đó trong List… em tìm mãi không ra cách lấy…
Em đọc cái comment trên rồi tự suy nghĩ 2 cách lấy giá trị tại vị trí thứ 5 trong 15 phút đi. Không hiểu hỏi tiếp
Anh ăn cơm đã 
có phải dùng thế này không anh:
Object o = List.getModel().getElementAt(i - 1);
System.out.println("Gia tri la: " +o.toString());
em không biết đúng không 
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?