|
Technical Interview Questions
Javascript Interview Questions
Oracle Interview Questions
J2EE Interview Questions
C++
Interview Questions
XML
Interview Questions
EJB
Interview Questions
JSP
Interview Questions
.........More
Programming Source Codes
Java Source Codes
Html Source Codes
CSS Source Codes
C Source Codes
.........More
Soft Skills
Communication Skills
Leadership Skills
.........More
|
|
Java Source Codes
Code for ComboBox in Table
in Swing
/**
*
* @author jimmi.prajapati
*
*/
public class SmallCellComboExample extends JFrame {
public SmallCellComboExample() {
super("SmallCell Combo Example");
DefaultTableModel dm = new DefaultTableModel(4, 10) {
public void setValueAt(Object obj, int row, int col) {
if (obj != null) {
String str;
if (obj instanceof String) {
str = ((String) obj).substring(0, 2);
} else {
str = obj.toString();
}
super.setValueAt(str, row, col);
}
}
};
JTable table = new JTable(dm);
String[] str = { "010 - To Time", "020 - Vacation", "030 - Feel Bad" };
SteppedComboBox combo = new SteppedComboBox(str) {
public void contentsChanged(ListDataEvent e) {
selectedItemReminder = null;
super.contentsChanged(e);
}
};
Dimension d = combo.getPreferredSize();
combo.setPopupWidth(d.width);
DefaultCellEditor editor = new DefaultCellEditor(combo);
table.setDefaultEditor(Object.class, editor);
JScrollPane scroll = new JScrollPane(table);
getContentPane().add(scroll, BorderLayout.CENTER);
}
public static void main(String[] args) {
SmallCellComboExample frame = new SmallCellComboExample();
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
frame.setSize(300, 120);
frame.setVisible(true);
}
}
/**
* @version 1.0 12/12/98
*/
class SteppedComboBoxUI extends MetalComboBoxUI {
protected ComboPopup createPopup() {
BasicComboPopup popup = new BasicComboPopup(comboBox) {
public void show() {
Dimension popupSize = ((SteppedComboBox) comboBox)
.getPopupSize();
popupSize
.setSize(popupSize.width,
getPopupHeightForRowCount(comboBox
.getMaximumRowCount()));
Rectangle popupBounds = computePopupBounds(0, comboBox
.getBounds().height, popupSize.width, popupSize.height);
scroller.setMaximumSize(popupBounds.getSize());
scroller.setPreferredSize(popupBounds.getSize());
scroller.setMinimumSize(popupBounds.getSize());
list.invalidate();
int selectedIndex = comboBox.getSelectedIndex();
if (selectedIndex == -1) {
list.clearSelection();
} else {
list.setSelectedIndex(selectedIndex);
}
list.ensureIndexIsVisible(list.getSelectedIndex());
setLightWeightPopupEnabled(comboBox.isLightWeightPopupEnabled());
show(comboBox, popupBounds.x, popupBounds.y);
}
};
popup.getAccessibleContext().setAccessibleParent(comboBox);
return popup;
}
}
class SteppedComboBox extends JComboBox {
protected int popupWidth;
public SteppedComboBox(ComboBoxModel aModel) {
super(aModel);
setUI(new SteppedComboBoxUI());
popupWidth = 0;
}
public SteppedComboBox(final Object[] items) {
super(items);
setUI(new SteppedComboBoxUI());
popupWidth = 0;
}
public SteppedComboBox(Vector items) {
super(items);
setUI(new SteppedComboBoxUI());
popupWidth = 0;
}
public void setPopupWidth(int width) {
popupWidth = width;
}
public Dimension getPopupSize() {
Dimension size = getSize();
if (popupWidth < 1)
popupWidth = size.width;
return new Dimension(popupWidth, size.height);
}
}
<<<----- Return to
Java Source
Code Questions Page.
Have a Question ?
post your questions here. It
will be answered as soon as possible.
Check
Java Interview
Questions for more Java Interview Questions with answers
Check
Servlet Interview
Questions for more Servlet Interview Questions with answers
Check
Structs Interview
Questions for more Structs Interview Questions with answers
|