首页>代码>Java Swing界面优化JComboBox教程>/course/src/com/wolffy/ui/MyListCellRenderer.java
package com.wolffy.ui;

import javax.swing.BorderFactory;
import javax.swing.DefaultListCellRenderer;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.ListCellRenderer;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;

/**
 * Created by Felix on 2019/05/30.
 */
public class MyListCellRenderer implements ListCellRenderer {

    private DefaultListCellRenderer defaultCellRenderer = new DefaultListCellRenderer();

    @Override
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {

        // 每一行,都转换成jlabel来处理
        JLabel renderer = (JLabel) defaultCellRenderer.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);

        // 每一行的jlabel的颜色
        if (isSelected) {
            renderer.setBackground(new Color(150, 207, 254));
            renderer.setForeground(Color.WHITE);
        } else {
            renderer.setBackground(null);
        }

        // 字体靠左
        renderer.setHorizontalAlignment(JLabel.LEFT);

        // 左侧padding
        renderer.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 0));

        // render的宽高
        renderer.setPreferredSize(new Dimension(100, 25));

        // list背景色,也就是向下的按钮左边儿那一块儿
        list.setSelectionBackground(null);
        list.setBorder(null);

        return renderer;
    }

}
最近下载更多
李四李四李四  LV1 2023年4月12日
闭回路h  LV1 2023年4月9日
yeyuantao  LV6 2023年3月1日
香菇肉饼汤  LV8 2022年11月22日
ninininini  LV2 2022年7月1日
banliyoo  LV2 2021年9月15日
王志明  LV2 2020年3月18日
cheung666  LV1 2020年1月15日
s962707467  LV1 2019年12月8日
rp2wxl  LV1 2019年9月15日
最近浏览更多
漫步的海星  LV4 2023年8月25日
dsuccess 2023年7月5日
暂无贡献等级
李四李四李四  LV1 2023年4月12日
闭回路h  LV1 2023年4月9日
yeyuantao  LV6 2023年3月1日
yohohero  LV1 2023年1月15日
ninininini  LV2 2022年7月1日
xiao小果  LV13 2022年5月25日
喃喵xxxx  LV6 2022年5月13日
liys1234  LV9 2022年4月22日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友