I. JComboBox 1. Một số phương thức của lớp JComboBox: S t t Phương thức Chức năng 1 void addItem (Object item) Thêm mục vào danh sách các mục . 2 void setEditable (Boolean aFlag) Thiết lập thuộc tính có thể chỉnh sửa của JComboBox . 3 boolean isEditable () Lấy thuộc tính có thể chỉnh sửa mục của JComboBox . 4 void insertItemAt (Object item, int index) Chèn một mục vào danh sách mục tại một chỉ số xác định . 5 void removeItem (Object item) Xóa mục từ danh sách mục . 6 void removeItemAt (int index) Xóa mục tại chỉ số xác định. 7 void removeAllItems () Xóa tất cả các mục từ danh sách mục . 8 Object getSelectedItem () Trả về giá trị hiện đang được chọn . 9 void setBackground (Color bg) Thiết lập màu nền cho JComboBox 1 0 void setEnable (Boolean b) Thiết lập không cho phép tác động lên JComboBox, đồng thời làm mờ nó đi. 1 1 void addActionListener (ActionListener l) Thêm bộ lắng nghe cho JComboBox. 1 void setBounds (int x, Thiết lập vị trí, kích
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
I. JComboBox1. M t s ph ng th c c a l p JComboBox:ộ ố ươ ứ ủ ớStt Phương thức Chức năng1 void addItem (Object item) Thêm mục vào danh sách các mục.2 void setEditable (Boolean aFlag) Thiết lập thuộc tính có thể chỉnh
sửa của JComboBox.3 boolean isEditable () Lấy thuộc tính có thể chỉnh sửa mục
của JComboBox.4 void insertItemAt (Object item, int
index)Chèn một mục vào danh sách mục tại một chỉ số xác định.
5 void removeItem (Object item) Xóa mục từ danh sách mục .6 void removeItemAt (int index) Xóa mục tại chỉ số xác định.7 void removeAllItems () Xóa tất cả các mục từ danh sách mục .8 Object getSelectedItem () Trả về giá trị hiện đang được chọn.9 void setBackground (Color bg) Thiết lập màu nền cho JComboBox10 void setEnable (Boolean b) Thiết lập không cho phép tác động lên
JComboBox, đồng thời làm mờ nó đi.11 void addActionListener
(ActionListener l)Thêm bộ lắng nghe cho JComboBox.
12 void setBounds (int x, int y, int width, int height)
Thiết lập vị trí, kích thước cho JComboBox.
- Chương trình ComboBoxTest.java sau minh họa cho 10 phương thức trên:package comboboxtest;import java.awt.*;import java.awt.event.*;import javax.swing.*;
public class ComboBoxTest { public static void main(String[] args) { ComboBoxFrame frame=new ComboBoxFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); }}class ComboBoxFrame extends JFrame{
Thiết lập chế độ lựa chọn cho List.SINGLE_SELECTION: chọn một mục tại 1 thời điểm.SINGLE_INTERVAL_SELECTION: chọn một mục hoặc 1 phạm vi của mục.MULTIPLE_INTERVAL_SELECTION: chọn một hoặc nhiều khoảng liền kề của các chỉ số tại một thời điểm.
4 Object[] getSelectedValues () Trả về một mảng của tất cả các giá trị được chọn
Thêm vào danh sách một listener được thông báo mỗi khi thay đổi lựa chọn xảy ra.
- Chương trình ListTest.java sau minh h a cho 5 ph ng th c trên:ọ ươ ứpackage listtest;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;
public class ListTest { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { JFrame frame = new ListFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true);
wordList = new JList(words); wordList.setVisibleRowCount(4); JScrollPane scrollPane = new JScrollPane(wordList);
listPanel = new JPanel(); listPanel.add(scrollPane); wordList.addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent event) { Object[] values = wordList.getSelectedValues();
StringBuilder text = new StringBuilder(prefix); for (int i = 0; i < values.length; i++) { String word = (String) values[i]; text.append(word); text.append(" "); } text.append(suffix); label.setText(text.toString()); } });
buttonPanel = new JPanel(); buttonPanel1 = new JPanel(); group = new ButtonGroup(); group1 = new ButtonGroup(); makeButton("Vertical", JList.VERTICAL); makeButton("Vertical Wrap", JList.VERTICAL_WRAP); makeButton("Horizontal Wrap", JList.HORIZONTAL_WRAP); makeButton1("Single selection", ListSelectionModel.SINGLE_SELECTION); makeButton1("Single interval selction", ListSelectionModel.SINGLE_INTERVAL_SELECTION); makeButton1("Multiple interval selection", ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); label = new JLabel(prefix + suffix); add(listPanel, BorderLayout.NORTH); add(label, BorderLayout.LINE_START); add(buttonPanel, BorderLayout.SOUTH); add(buttonPanel1, BorderLayout.LINE_END); } private void makeButton(String label, final int orientation) {
JRadioButton button = new JRadioButton(label); buttonPanel.add(button); if (group.getButtonCount() == 0) button.setSelected(true); group.add(button); button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent event) { wordList.setLayoutOrientation(orientation); listPanel.revalidate(); } }); } private void makeButton1(String label,final int selectionMode) { JRadioButton button1 = new JRadioButton(label); buttonPanel1.add(button1); if (group1.getButtonCount() == 0) button1.setSelected(true); group1.add(button1); button1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { wordList.setSelectionMode(selectionMode); listPanel.revalidate(); } }); } }
2. Một số phương thức của lớp JList:Stt Phương thức Chức năng1 void setPrototypeCellValue (Object
newValue)Thiết lập giá trị cell nguyên mẫu để xác định chiều rộng và chiều cao của mỗi cell trong danh sách
2 void setFixedCellWidth (int width) Thiết lập chiều rộng (pixel) của mỗi ô trong danh sách
3 void setFixedCellHeight(int height) Thiết lập chiều cao (pixel) của mỗi ô trong danh sách
4 int getSize() Trả về số các kích thước của List.
- Chương trình LongListTest.java sau minh họa cho 4 phương thức trên:package longlisttest;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import javax.swing.event.*;
public class LongListTest{ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { JFrame frame = new LongListFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }); } }
class LongListFrame extends JFrame{ public LongListFrame() { setTitle("LongListTest"); setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
wordList = new JList(new WordListModel(3)); wordList.setVisibleRowCount(5);
public void setSubject(String word) { StringBuilder text = new StringBuilder(prefix); text.append(word); text.append(suffix); label.setText(text.toString()); }
private static final int DEFAULT_WIDTH = 350; private static final int DEFAULT_HEIGHT = 300; private JList wordList; private JPanel listPanel; private JPanel buttonPanel; private JPanel buttonPanel1; private JLabel label; private JCheckBox cellvalue; private JCheckBox cellWidth; private JCheckBox cellHeight; private JTextField cellvalue1; private JTextField cellWidth1; private JTextField cellHeight1; private JButton cellvalue2; private JButton getSize; private String prefix = "The quick brown "; private String suffix = " jumps over the lazy dog.";}class WordListModel extends AbstractListModel
{ public WordListModel(int n) { length = n; }
@Override public int getSize() { return (int) Math.pow(LAST - FIRST + 1, length); }
@Override public Object getElementAt(int n) { StringBuilder r = new StringBuilder(); ; for (int i = 0; i < length; i++) { char c = (char) (FIRST + n % (LAST - FIRST + 1)); r.insert(0, c); n = n / (LAST - FIRST + 1); } return r; }
private int length; public static final char FIRST = 'a'; public static final char LAST = 'z';}
3. M t s ph ng th c c a l p JList:ộ ố ươ ứ ủ ớStt Phương thức Chức năng1 Color getBackground() Trả về màu nền cho ô không được chọn2
Color getSelectionBackground()Trả về màu nền cho ô được chọn
3Color getForeground()
Trả về màu chữ cho ô không được chọn
4 Color getSelectionForeground() Trả về màu chữ cho ô được chọn5 Color setBackground (Color bg) Thiết lập màu nền cho ô không được chọn6 Color setSelectionBackground
(Color selectionBackground)Thiết lập màu nền cho ô được chọn
7Color setForeground(Color fg)
Thiết lập màu chữ cho ô không được chọn
8 Color setSelectionForeground (Color selectionForeground)
Thiết lập màu chữ cho ô được chọn
- Chương trình ListRenderingTest.java sau minh họa cho 8 phương thức trên:package listrenderingtest;import java.awt.event.ActionEvent;import java.util.*; import java.awt.*;
Container contentPane = getContentPane(); contentPane.add(p, BorderLayout.SOUTH); text = new JTextArea("The quick brown fox jumps over the lazy dog"); text.setFont((Font) fonts.get(0)); text.setLineWrap(true); text.setWrapStyleWord(true);
private JTextArea text; private JList fontList; private Color bg; private Color slbg; private Color fg; private Color slfg; private Color luubg; private JButton bg_slbg; private JButton fg_slfg; private static final int DEFAULT_WIDTH = 400; private static final int DEFAULT_HEIGHT = 280; }
@Override public Dimension getPreferredSize() { String text = font.getFamily(); Graphics g = getGraphics(); FontMetrics fm = g.getFontMetrics(font); return new Dimension(fm.stringWidth(text), fm.getHeight()); }
private Font font; private Color background; private Color foreground; }