本文整理汇总了Java中javax.swing.JList.getDropLocation方法的典型用法代码示例。如果您正苦于以下问题:Java JList.getDropLocation方法的具体用法?Java JList.getDropLocation怎么用?Java JList.getDropLocation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.swing.JList
的用法示例。
在下文中一共展示了JList.getDropLocation方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getListCellRendererComponent
import javax.swing.JList; //导入方法依赖的package包/类
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
if (!(value instanceof TreeListNode)) {
//shoudln't happen
return new JLabel();
}
TreeListNode node = (TreeListNode) value;
int rowHeight = list.getFixedCellHeight();
int rowWidth = list.getVisibleRect().width;
int dropIndex = -1;
DropLocation dropLocation = list.getDropLocation();
if (dropLocation != null && !dropLocation.isInsert()) {
dropIndex = dropLocation.getIndex();
}
boolean isDropTarget = dropIndex == index;
isSelected = isSelected || isDropTarget;
Color background = isSelected ? list.getSelectionBackground() : list.getBackground();
Color foreground = isSelected ? list.getSelectionForeground() : list.getForeground();
return node.getRenderer(foreground, background, isSelected, cellHasFocus, rowHeight, rowWidth);
}
示例2: getListCellRendererComponent
import javax.swing.JList; //导入方法依赖的package包/类
@Override
public Component getListCellRendererComponent (
JList list,
Object value,
int index,
boolean isSelected,
boolean cellHasFocus
) {
setComponentOrientation (list.getComponentOrientation ());
Color bg = null;
Color fg = null;
JList.DropLocation dropLocation = list.getDropLocation ();
if (dropLocation != null && !dropLocation.isInsert () && dropLocation.getIndex () == index) {
bg = UIManager.getColor ("List.dropCellBackground");
fg = UIManager.getColor ("List.dropCellForeground");
isSelected = true;
}
String line = (String) value;
Link link = StackLineAnalyser.analyse (line);
if (isSelected) {
setBackground (bg == null ? list.getSelectionBackground () : bg);
setForeground(fg == null ? list.getSelectionForeground() : fg);
} else {
setBackground (list.getBackground ());
// if (link != null)
// setForeground (foreground);
// else
setForeground (list.getForeground ());
}
if (link != null) {
StringBuilder sb = new StringBuilder ();
sb.append ("<html>");
if (isSelected)
sb.append("<style> a.val {text-decoration: underline; color: " + toRgbText(getForeground().getRGB()) + "} </style><body>");
sb.append (line.substring (0, link.getStartOffset ()));
sb.append ("<a class=\"val\" href=\"\">");
sb.append (line.substring (link.getStartOffset (), link.getEndOffset ()));
sb.append ("</a>");
sb.append (line.substring (link.getEndOffset ()));
sb.append ("</body></html>");
setText (sb.toString ());
} else
setText (line.trim ());
setEnabled (list.isEnabled ());
Border border = null;
if (cellHasFocus) {
if (isSelected) {
border = UIManager.getBorder ("List.focusSelectedCellHighlightBorder");
}
if (border == null) {
border = UIManager.getBorder ("List.focusCellHighlightBorder");
}
} else {
border = getNoFocusBorder ();
}
setBorder (border);
return this;
}
示例3: getListCellRendererComponent
import javax.swing.JList; //导入方法依赖的package包/类
public Component getListCellRendererComponent (
JList list,
Object value,
int index,
boolean isSelected,
boolean cellHasFocus
) {
setComponentOrientation (list.getComponentOrientation ());
Color bg = null;
Color fg = null;
JList.DropLocation dropLocation = list.getDropLocation ();
if (dropLocation != null && !dropLocation.isInsert () && dropLocation.getIndex () == index) {
bg = UIManager.getColor("List.dropCellBackground");
fg = UIManager.getColor("List.dropCellForeground");
isSelected = true;
}
if (isSelected) {
setBackground (bg == null ? list.getSelectionBackground () : bg);
setForeground (fg == null ? list.getSelectionForeground () : fg);
} else {
setBackground (list.getBackground ());
setForeground (list.getForeground ());
}
String name = (String) value;
setText (name.substring (1));
setSelected (name.charAt (0) == '+');
setEnabled (list.isEnabled ());
setFont (list.getFont ());
Border border = null;
if (cellHasFocus) {
if (isSelected) {
border = UIManager.getBorder("List.focusSelectedCellHighlightBorder");
}
if (border == null) {
border = UIManager.getBorder("List.focusCellHighlightBorder");
}
} else {
border = getNoFocusBorder ();
}
if (border != null) { //#189786: rarely, the border is null - reasons are unknown
setBorder (border);
} else {
Logger.getLogger(CheckBoxRenderrer.class.getName()).log(Level.INFO, "Cannot set any border");
}
return this;
}