下面列出了怎么用javax.swing.DefaultListCellRenderer的API类实例代码及写法,或者点击链接到github查看源代码。
public ObjectiveDropDown() {
super();
setRenderer(new ListCellRenderer<Objective>() {
protected DefaultListCellRenderer renderer = new DefaultListCellRenderer();
@Override
public Component getListCellRendererComponent(JList<? extends Objective> list, Objective value,
int index, boolean isSelected, boolean cellHasFocus) {
JLabel cell = (JLabel) renderer.getListCellRendererComponent(list, value, index, isSelected,
cellHasFocus);
Objective objective = value;
cell.setText((objective != null ? "objective: " + objective.getName() : ""));
return cell;
}
});
setMaximumSize(getPreferredSize());
}
/**
* Creates new form ShowEffPomDiffPanel
*/
public ShowEffPomDiffPanel(ProjectConfigurationProvider<MavenConfiguration> configs) {
initComponents();
ComboBoxModel<MavenConfiguration> model = new DefaultComboBoxModel<MavenConfiguration>(configs.getConfigurations().toArray(new MavenConfiguration[0]));
comConfiguration.setModel(model);
comConfiguration.setEditable(false);
comConfiguration.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
return super.getListCellRendererComponent(list, ((ProjectConfiguration)value).getDisplayName(), index, isSelected, cellHasFocus);
}
});
comConfiguration.setSelectedItem(configs.getActiveConfiguration());
enableFields();
epProperties.setContentType("text/x-properties");
}
PoliciesListCellRenderer( Set<String> selected ){
JList list = new JList(new Object[]{""});
Component comp = new DefaultListCellRenderer().
getListCellRendererComponent( list, "", 0, true, true);
mySelectedBckgrnd = comp.getBackground();
setOpaque( true );
setLayout( new FlowLayout(FlowLayout.LEFT) );
myCheckBox = new JCheckBox();
myCheckBox.setBackground( Color.WHITE );
add( myCheckBox );
myLbl = new JLabel( );
myLbl.setBackground( Color.WHITE );
add( myLbl );
setBackground( Color.WHITE );
mySelected = new boolean[ myPoliciesList.getModel().getSize()];
for( int i=0; i<mySelected.length ; i++ ){
String id = myPoliciesList.getModel().getElementAt(i).toString();
mySelected[ i] =selected.contains( id);
}
}
public CustomizerFrameworks(ProjectCustomizer.Category category, Project project) {
this.category = category;
this.project = project;
initComponents();
initFrameworksList();
btnRemoveAdded.setEnabled(false);
jListFrameworks.setCellRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
WebFrameworkProvider prov = (WebFrameworkProvider) value;
Component toRet = super.getListCellRendererComponent(list, prov.getName(), index, isSelected, cellHasFocus);
if (toRet instanceof JLabel) {
JLabel lbl = (JLabel) toRet;
if (addedFrameworks.contains(prov)) {
lbl.setFont(lbl.getFont().deriveFont(Font.BOLD));
} else {
lbl.setFont(lbl.getFont().deriveFont(Font.PLAIN));
}
}
return toRet;
}
});
}
/**
* Creates new Helper instance for specific project type.
* It also initiate server model and platform version model combo boxes so they are filled only with supported options
*
* @param serverModel combo box for all possible servers
* @param j2eeVersion combo box for J2ee version specification
* @param projectType project type
*/
public ServerSelectionHelper(JComboBox serverModel, JComboBox j2eeVersion, J2eeModule.Type projectType) {
this.serverModel = serverModel;
this.projectType = projectType;
this.delegate = j2eeVersion.getRenderer();
this.j2eeVersion = j2eeVersion;
this.j2eeVersion.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
String profileName = null;
if (value instanceof Profile) {
profileName = ((Profile) value).getDisplayName();
}
if (value instanceof String) {
profileName = (String) value;
}
return delegate.getListCellRendererComponent(list, profileName, index, isSelected, cellHasFocus);
}
});
initServerModel(null);
updatePlatformVersionModel();
}
/**
* Creates new form FoldOptionsPanel
*/
public FoldOptionsPanel(FoldOptionsController ctrl) {
this.ctrl = ctrl;
initComponents();
langSelect.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (value instanceof String[]) {
value = ((String[])value)[1];
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); //To change body of generated methods, choose Tools | Templates.
}
});
langSelect.addActionListener(this);
contentPreview.addActionListener(this);
foldedSummary.addActionListener(this);
// preferences should be set as a reaction to index selection
}
private ListCellRenderer createSelectorsRenderer() {
return new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
if (value != null) {
SelectorItemRenderer selectorModelItemRenderer = getSelectorModelItemRenderer();
selectorModelItemRenderer.setItem((SelectorItem) value, isSelected);
return selectorModelItemRenderer;
// setText(item.getDisplayName());
}
return c;
}
};
}
private ListCellRenderer createStylesheetsRenderer() {
return new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
if (value == null) {
//empty model
return c;
}
FileObject file = (FileObject) value;
String fileNameExt = file.getNameExt();
setText(fileNameExt);
// if(file.equals(context)) {
// StringBuilder sb = new StringBuilder();
// sb.append("<html><body><b>"); //NOI18N
// sb.append(fileNameExt);
// sb.append("</b></body></html>"); //NOI18N
// setText(sb.toString());
// } else {
// setText(fileNameExt);
// }
return c;
}
};
}
/**
* Creates a renderer for the at-rules combobox dropdown.
*/
private ListCellRenderer createAtRulesRenderer() {
return new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
if (value == null) {
setText(Bundle.none_item());
} else if(value instanceof AtRuleItem) {
setText(((AtRuleItem) value).getDisplayName());
} else if(value instanceof String) {
setText((String)value);
}
return c;
}
};
}
public Unshelve () {
panel = new UnshelveChangesPanel();
panel.cmbPatches.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent (JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (value instanceof Patch) {
value = ((Patch) value).getPatchName();
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
});
unshelveButton = new JButton();
removeButton = new JButton();
panel.cmbPatches.addActionListener(this);
initializePatches();
}
private ListCellRenderer createStyleSheetsRenderer() {
return new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
if (value == null) {
setText("<html>" + Bundle.none_item());
} else {
FileObject file = (FileObject) value;
FileObject webRoot = ProjectWebRootQuery.getWebRoot(file);
String file2string;
if (webRoot != null) {
file2string = FileUtil.getRelativePath(webRoot, file);
} else {
file2string = FileUtil.getFileDisplayName(file);
}
setText(file2string);
}
return c;
}
};
}
public OnSaveTabPanel() {
initComponents();
// Languages combobox renderer
cboLanguage.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if ((value instanceof String) && selector != null) {
value = selector.getLanguageName((String) value);
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
});
commonPanel = new OnSaveCommonPanel();
commonPanelContainer.setLayout(new BorderLayout());
commonPanelContainer.add(commonPanel, BorderLayout.WEST);
customPanelContainer.setLayout(new BorderLayout());
}
/** Creates new form FolderBasedOptionPanel */
FolderBasedOptionPanel(FolderBasedController controller, Document filterDocument, boolean allowFiltering) {
this.controller = controller;
initComponents();
filter.setDocument(filterDocument);
if (!allowFiltering) {
filter.setVisible(false);
filterLabel.setVisible(false);
}
ListCellRenderer renderer = new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (value instanceof String)
value = EditorSettings.getDefault().getLanguageName((String)value);
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
};
languageCombo.setRenderer(renderer);
languageCombo.addActionListener(this);
update();
}
/**
* Creates new form CodeCompletionOptionsPanel.
*/
public CodeCompletionOptionsPanel () {
initComponents ();
// Languages combobox renderer
cbLanguage.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (value instanceof String) {
value = ((String)value).length() > 0
? EditorSettings.getDefault().getLanguageName((String)value)
: org.openide.util.NbBundle.getMessage(CodeCompletionOptionsPanel.class, "LBL_AllLanguages"); //NOI18N
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
});
}
public CharsetSelector() {
super(
Charset.availableCharsets().values().toArray(new Charset[]{})
);
this.setRenderer(new DefaultListCellRenderer(){
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Object displayValue;
if(value instanceof Charset) {
displayValue = ((Charset) value).displayName();
} else {
displayValue = value;
}
return super.getListCellRendererComponent(list, displayValue, index, isSelected, cellHasFocus);
}
});
}
@SuppressWarnings("unchecked")
protected UpgradeStrategyEditor() {
super(new JComboBox<UpgradeXGAPP.UpgradePath.UpgradeStrategy>());
JComboBox<UpgradeXGAPP.UpgradePath.UpgradeStrategy> combo = (JComboBox)getComponent();
combo.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
JLabel renderer = (JLabel)super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
renderer.setText(((UpgradeXGAPP.UpgradePath.UpgradeStrategy)value).label);
renderer.setToolTipText(((UpgradeXGAPP.UpgradePath.UpgradeStrategy)value).tooltip);
renderer.setIcon(strategyIcons.get(value));
renderer.setDisabledIcon(disabledStrategyIcon);
return renderer;
}
});
combo.setModel(new DefaultComboBoxModel<>());
}
public UpdateUIRecursionTest() {
super("UpdateUIRecursionTest");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 400);
String[] listData = {
"First", "Second", "Third", "Fourth", "Fifth", "Sixth"
};
list = new JList(listData);
list.setCellRenderer(this);
renderer = new DefaultListCellRenderer();
getContentPane().add(new JScrollPane(list), BorderLayout.CENTER);
setVisible(true);
}
public UpdateUIRecursionTest() {
super("UpdateUIRecursionTest");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 400);
String[] listData = {
"First", "Second", "Third", "Fourth", "Fifth", "Sixth"
};
combo = new JComboBox(listData);
combo.setRenderer(this);
renderer = new DefaultListCellRenderer();
getContentPane().add(new JScrollPane(combo), BorderLayout.CENTER);
setVisible(true);
}
private void createCategoryCombo() {
mCategoryCombo = new JComboBox<>();
// Next two client properties are specific to Mac OS X
mCategoryCombo.putClientProperty("JComponent.sizeVariant", "small");
mCategoryCombo.putClientProperty("JComboBox.isPopDown", Boolean.TRUE);
mCategoryCombo.setMaximumRowCount(20);
mCategoryCombo.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component comp = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
setFont(getFont().deriveFont(index == 0 ? Font.ITALIC : Font.PLAIN));
return comp;
}
});
mCategoryCombo.addActionListener((event) -> {
mCategoryCombo.setFont(mCategoryCombo.getFont().deriveFont(mCategoryCombo.getSelectedIndex() == 0 ? Font.ITALIC : Font.PLAIN));
mCategoryCombo.revalidate();
mCategoryCombo.repaint();
if (mOutline != null) {
mOutline.reapplyRowFilter();
}
});
mToolbar.add(mCategoryCombo);
adjustCategoryCombo();
}
private JComboBox createURICombo() {
JComboBox uris = new JComboBox();
uris.setRenderer(new DefaultListCellRenderer() {
private static final long serialVersionUID = 2756587449741341859L;
@Override
public Component getListCellRendererComponent(JList list,
Object value, int index, boolean isSelected,
boolean cellHasFocus) {
return value == null ? null : super.getListCellRendererComponent(list,
extractNameFromURI(URIs.newURI((String) value)), index,
isSelected, cellHasFocus);
}
});
uris.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent event) {
if (event.getStateChange() == SELECTED) {
replaceSubpanel();
}
}
});
return uris;
}
private void createUIComponents() {
this.targetBranchDropdown = new JComboBox();
this.targetBranchDropdown.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list,
Object gitRemoteBranch,
int index,
boolean isSelected,
boolean cellHasFocus) {
return super.getListCellRendererComponent(list,
gitRemoteBranch != null ? ((GitRemoteBranch) gitRemoteBranch).getName() : "",
index,
isSelected,
cellHasFocus);
}
});
this.targetBranchDropdown.setActionCommand(CMD_TARGET_BRANCH_UPDATED);
}
private void ensureInitialized() {
if (!this.initialized) {
// override the renderer so it doesn't show the object toString but instead shows the branch name
remoteBranchComboBox.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
return super.getListCellRendererComponent(list,
value != null ? ((GitRemoteBranch) value).getName() : StringUtils.EMPTY,
index,
isSelected,
cellHasFocus);
}
});
this.initialized = true;
}
}
/** Creates new form PickMIDlet */
public PickMIDlet() {
initComponents();
midletPicker.setRenderer(new DefaultListCellRenderer() {
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if(value == null) {
value = "";
} else {
String s = (String)value;
value = s.substring(0, s.indexOf(','));
}
return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
}
});
Preferences pref = Preferences.userNodeForPackage(ResourceEditorView.class);
jarFile.setText(pref.get("jar", ""));
updateMIDletList();
midletPicker.setSelectedItem(pref.get("midlet", null));
customComponents = null;
}
/**
* Constructor
*/
public EditorControl() {
// use heavyweight component
playerCombobox.setLightWeightPopupEnabled(false);
playerCombobox.addActionListener(e -> currentPlayer = (Integer) playerCombobox.getSelectedItem());
playerCombobox.setRenderer(new DefaultListCellRenderer() {
private static final long serialVersionUID = 1L;
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
Integer player = (Integer) value;
setIcon(new RectIcon(22, new Color(mapContent.getPlayerColor(player.byteValue()).getARGB()), Color.GRAY));
setText(String.format(Locale.ENGLISH, EditorLabels.getLabel("general.player_x"), player));
return this;
}
});
}
private void setOnDemandCombo() {
cboOnDemand.setModel(new DefaultComboBoxModel<>(new Boolean[]{true, false}));
cboOnDemand.getModel().setSelectedItem(CONFIG.getImagesOnDemand());
cboOnDemand.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
setText((Boolean) value == true ? MText.get(_S12) : MText.get(_S13));
setForeground(cboOnDemand.isEnabled() ? getForeground() : Color.GRAY);
return this;
}
});
cboOnDemand.addItemListener((final ItemEvent e) -> {
if (e.getStateChange() == ItemEvent.SELECTED) {
doOnDemandChanged();
}
});
}
@Override
protected void buildChooser() {
colorList = new JList<>(new Vector<>(ColorCodes.getNames()));
DefaultListCellRenderer cellRenderer = new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
setOpaque(true);
Color color = ColorCodes.getColor(value.toString());
int max = Math.max(color.getRed(), Math.max(color.getGreen(), color.getBlue()));
setForeground(max < 160 ? Color.WHITE : Color.BLACK);
setBackground(color);
setBorder(new EmptyBorder(5, 5, 5, 5));
setFont(getFont().deriveFont(14f));
return this;
}
};
colorList.setCellRenderer(cellRenderer);
colorList.addListSelectionListener(this);
setLayout(new BorderLayout());
setBorder(new EmptyBorder(5, 5, 5, 5));
add(new JScrollPane(colorList), BorderLayout.CENTER);
}
SelectNewPlaceDialog() {
placeSelector.setRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
PlaceAccessDescriptor place = (PlaceAccessDescriptor) value;
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
String text = place == null ? "[No Places Available]" : place.getName();
((JLabel) c).setText(text);
return c;
}
});
}
public ListBoxBuilder<T> withRenderer(Function<T, String> renderer) {
return withRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(
JList<?> list, Object value, int index, boolean isSelected,
boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
((JLabel) c).setText(renderer.apply((T) value));
return c;
}
});
}
public ComboBoxBuilder<T> withCellRenderer(Function<T, String> renderer) {
withCellRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(
JList<?> list, Object value, int index, boolean isSelected,
boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
((JLabel) c).setText(renderer.apply((T) value));
return c;
}
});
return this;
}
ConfigurationsPanel(ModelHandle2 handle, NbMavenProjectImpl project) {
this();
this.handle = handle;
this.project = project;
// btnAdd.setVisible(false);
// btnEdit.setVisible(false);
// btnRemove.setVisible(false);
// addProfileConfigurations();
initListUI();
checkButtonEnablement();
lstConfigurations.setCellRenderer(new DefaultListCellRenderer() {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component supers = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
ModelHandle2.Configuration conf = (ModelHandle2.Configuration)value;
if (conf == ConfigurationsPanel.this.handle.getActiveConfiguration()) {
supers.setFont(supers.getFont().deriveFont(Font.BOLD));
}
return supers;
}
});
lstConfigurations.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
checkButtonEnablement();
}
});
createListModel();
}