首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将边框单元格颜色更改为全部Jtable,选中时为JList

JTable是Java Swing库中的一个组件,用于显示和编辑表格数据。JList也是Java Swing库中的一个组件,用于显示列表数据。要将边框单元格颜色更改为全部JTable选中时为JList,可以通过自定义渲染器和选择器来实现。

  1. 自定义渲染器:
    • 创建一个继承自DefaultTableCellRenderer的类,例如CustomTableCellRenderer。
    • 重写getTableCellRendererComponent方法,在方法中设置单元格的背景颜色为边框颜色。
    • 将JTable的单元格渲染器设置为自定义渲染器。
  • 自定义选择器:
    • 创建一个继承自DefaultListSelectionModel的类,例如CustomListSelectionModel。
    • 重写setSelectionInterval方法,在方法中设置选中时的背景颜色为JList的颜色。
    • 将JList的选择模型设置为自定义选择器。

下面是一个示例代码:

代码语言:txt
复制
import javax.swing.*;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.awt.*;

public class CustomTableCellRenderer extends DefaultTableCellRenderer {
    private Color borderColor;

    public CustomTableCellRenderer(Color borderColor) {
        this.borderColor = borderColor;
    }

    @Override
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
        Component component = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
        component.setBackground(borderColor);
        return component;
    }
}

public class CustomListSelectionModel extends DefaultListSelectionModel {
    private Color selectionColor;

    public CustomListSelectionModel(Color selectionColor) {
        this.selectionColor = selectionColor;
    }

    @Override
    public void setSelectionInterval(int index0, int index1) {
        super.setSelectionInterval(index0, index1);
        setBackground(selectionColor);
    }
}

public class Main {
    public static void main(String[] args) {
        JFrame frame = new JFrame("Custom JTable and JList");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 创建JTable
        String[] columnNames = {"Column 1", "Column 2", "Column 3"};
        Object[][] data = {
                {"Data 1", "Data 2", "Data 3"},
                {"Data 4", "Data 5", "Data 6"},
                {"Data 7", "Data 8", "Data 9"}
        };
        JTable table = new JTable(data, columnNames);

        // 创建JList
        String[] listData = {"Item 1", "Item 2", "Item 3"};
        JList<String> list = new JList<>(listData);

        // 设置JTable的单元格渲染器
        Color borderColor = Color.RED; // 边框颜色
        table.setDefaultRenderer(Object.class, new CustomTableCellRenderer(borderColor));

        // 设置JList的选择模型
        Color selectionColor = Color.BLUE; // 选中时的颜色
        list.setSelectionModel(new CustomListSelectionModel(selectionColor));

        // 将JTable和JList添加到窗口中
        frame.setLayout(new GridLayout(2, 1));
        frame.add(new JScrollPane(table));
        frame.add(new JScrollPane(list));

        frame.pack();
        frame.setVisible(true);
    }
}

在上述示例代码中,我们创建了一个自定义的单元格渲染器CustomTableCellRenderer,它将单元格的背景颜色设置为边框颜色。然后,我们创建了一个自定义的选择模型CustomListSelectionModel,它将选中时的背景颜色设置为JList的颜色。最后,我们将JTable和JList添加到一个包含两个滚动面板的窗口中,并设置窗口可见。

请注意,上述示例代码中没有提及任何特定的云计算品牌商或产品,如果需要使用腾讯云相关产品,可以根据具体需求选择适合的产品,例如云服务器、云数据库等。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

高级Swing 组件

虽然JList类能够自动显示字符串和图标,但是你必须为所有定制的图形将一个列表单元格绘制器安装到JList对象中。...参数:list 要绘制其单元格的列表 item 要绘制的项目 index 项目存放在列表模型中时使用的索引 isSelected * 如果设定的单元格被选定,则返回true hasFocus 如果设定的单元格拥有该焦点...当JTable需要查看某个值时,过滤器模型便计算实际的行索引,并且从模型中获取该值。...selected 如果单元格目前已经被选定 ,则 true hasFocus 如果单元格目前已经被选定,则 true row,column 单元格的行与列 当表格想要绘制一个单元格时,该方法便被调用。...它返回一个组件,然后该paint方法将被调用,以便将数据填入单元格区域。

8410

Java Swing JTable

JTable具有许多功能,可以自定义其呈现和编辑功能,但是为这些功能提供了默认设置,因此可以轻松设置简单的表。...将autoCreateRowSorter属性设置为true,以便JTable为您创建RowSorter。例如:setAutoCreateRowSorter(true)。...在设计使用JTable的应用程序时,值得密切注意将代表表数据的数据结构。 DefaultTableModel是一个模型实现,它使用对象矢量向量存储单元格值。...// 设置被选中的行前景(被选中时字体的颜色) void setSelectionForeground(Color selectionForeground) // 设置被选中的行背景 void setSelectionBackground...这是一个重要的区别,因为当用户重新排列表中的列时,视图中给定索引处的列将发生变化。同时,用户的操作永远不会影响模型的列顺序。 ?

5.1K10
  • java swing 添加 jcheckbox复选框

    ①首先我们需要面板(JPanel)或其他容器控件承载表格(JTable),值得一提的是:由于窗体本身就是容器型控件,您可以考虑将表格单个地放置在窗体上。...其次是表格样式,表格将数据和如何显示数据(比如列数量、列名称、是否可编辑)保存在其数据模版中,该模版实现自接口TableModel。   最后,表格(每一个单元格)可以设置渲染效果。...的背景颜色 直接设置为透明,我这里是用了一种明暗交替的颜色转换,所以背景颜色设置了一下 79 ck.setOpaque(false)...87 85 // 设置列编辑器 88 86 // 在以复选框为对象设置列编辑器时,必须保证该列能够被编辑,否则无法更改状态 89 87...// (此步骤可以省略,省略时不要忘记将列设为不可编辑) 90 88 // table.getColumnModel().getColumn(1).setCellEditor(new

    3.4K00

    Swing图形界面程序设计.1Swing概述

    因为AWT不再是图形界面开发的主流,所以,本书该章节将只针对图形用户界面的Swing以及事件类、事件接口进行讲解。...支持键盘代替鼠标的操作:在Swing组件中,可以使用JComponent类的registerKeyboardAction()方法,为Swing组件提供热键,使用户可以使用键盘代替鼠标操作。...设置边框:对Swing组件可以设置一到多个边框。在Swing中提供的各式边框,用户可以根据自己的需求来借助边框,由布局管理器对容器中的组件进行合理布局。...辅助类是用来描述组件信息的,如颜色类Color、字体类Font、绘图类Graphics等,不是Component类的子类,通常包含在java.awt包中。...在Swing组件类中,除JFrame、JApplet和JDialog都是JComponent类的子类,例如JButton、JTextArea、JList和JMenu等。

    15210

    Java-GUI 编程之 JList、JComboBox实现列表框

    ):设置默认选中项,并滚动到该项显示 setSelectionBackground(Color selectionBackground):设置选中项的背景颜色 setSelectionForeground...setSelectionMode(int selectionMode):设置选中模式,默认没有限制,也可以设置为单选或者区域选中 setVisibleRowCount(int visibleRowCount...如果需要创建一个可以增加、删除列表项的 JList 对象,则应该在创建 JLi st 时显式使用 DefaultListModel作为构造参数 。...addElement(E obj): 将指定元素添加到该 ListModel 的末尾 。...和 JComboBox 采用的都是简单的字符串列表项, 实际上 , JList 和 JComboBox还可以支持图标列表项,如果在创建 JList 或 JComboBox 时传入图标数组,则创建的 JList

    3.5K11

    java winform开发之JTable全攻略

    这两天在研究JTable的使用,也有一些收获,所以在这里跟大家分享交流一下,下面的内容将包括:1)JTable的基本用法;2)怎样为JTable添加行点击响应事件,双击后打开窗口;3)怎样为JTable...怎样为JTable初始化内容呢?...的setModel方法,就可以将列头及数据的信息显示在表格中啦。...2)怎样添加行点击事件 首先,在JTable的设计视图中先选中JTable,然后右击,在事件的弹出菜单中依次选中"mouse-click”就可以捕捉表格的点击事件了,在这个事件监听方法中,会传入一个java.awt.event.MouseEvent...将根据这个方法的返回值来决定单元格显示的内容 */ public String toString(){ return this.getText(); } }

    1.3K30

    Excel表格的35招必学秘技

    单击“格式”按钮,打开“单元格格式”对话框,将“字体”的“颜色”设置为“红色”。   ...3.调整好行高和列宽后,同时选中A1至G2单元格区域(第1位学生的成绩条区域),按“格式”工具栏“边框”右侧的下拉按钮,在随后出现的边框列表中,选中“所有框线”选项,为选中的区域添加边框(如果不需要边框...十六、为单元格快速画边框   在Excel 2002以前的版本中,为单元格区域添加边框的操作比较麻烦,Excel 2002对此功能进行了全新的拓展。   ...②如果需要画出不同颜色的边框,可以先按工具栏右侧的“线条颜色”按钮,在随后弹出的调色板中选中需要的颜色后,再画边框即可。③这一功能还可以在单元格中画上对角的斜线。...它们分别是:“=UPPER(源数据格)”,将文本全部转换为大写;“=LOWER(源数据格)”,将文本全部转换成小写;“=PROPER(源数据格)”,将文本转换成“适当”的大小写,如让每个单词的首字母为大写等

    7.6K80

    报表设计-第一张报表

    边框:选中从 A1~D5 单元格,点击工具栏中的  ?  按钮,在系统弹出的边框设置对话框中,同时添加内部和外部边框。 ? 最终样式效果如下图所示: ?...选中 C4 单元格,由于 A4、B4、C3 单元格的扩展已经确定了唯一的销量值,故 C4 单元格无需扩展,扩展方向为不扩展。 C5 和 D5 单元格也都要设置扩展方向为不扩展。 ?...选中 A1~D5 单元格,点击上方的居中按钮,将表格中的字体居中显示。 ? 4)多数据集关联 当报表中存在不同数据集的数据时,需要通过添加数据过滤条件,建立起不同数据集之间的联系。...6)用户可以自定义柱形图中系列的柱形颜色,下面我们将系列一的柱形颜色从蓝色修改为紫色。...因为数据集中的数据是将数据库中的数据全部取出来,表格的数据来源于数据集,柱形图的数据来源于表格,所以需要给表格设置数据过滤条件,当用户下拉选择地区参数点击查询时,表格和柱形图只显示该地区的数据。

    2.9K20

    图表做的好,工资少不了!百分比圆环图详细讲解!

    操作步骤 准备好数据,在A2单元格内输入完成率的百分比,在B2单元格内输入未完成率,为了更具有联动性,B2单元格可以输入公式:【=1-A2】 ?...插入图表 ①选中【数据区域】→②点击【插入】→③点击【插入饼图或圆环图】→ ④选择【圆环图】。插入图表后可以删除一些不必要的元素,以及可以适当更改图表背景颜色,增加一些元素。 ?...双击圆环图【完成率部分】→在弹出的界面中,点击【填充与线条】→勾选【纯色填充】→选择自己喜欢的颜色进行填充,这里我填充为蓝色。 ?...在此界面往下拉,找到【边框】→勾选【实线】→颜色设置为【白色】→宽度设置为【14】;【未完成率部分】照前面的步骤,依次填充为蓝色,线条设置为白色即可。 ? 效果图: ?...第二个图表也很简单,我们先在上个图表的基础下,把填充颜色全部更改为黄色。 ? 接着进行简单的调整:双击【未完成率部分】,在弹出的界面,调整填充颜色的透明度。 ?

    1.3K30

    c# WinForm开发 DataGridView控件的各种操作总结(单元格操作,属性设置)

    // 设定 (0, 0) 为当前单元格 DataGridView1.CurrentCell = DataGridView1[0, 0]; 在整行选中模式开启时,你也能够通过 CurrentCell...(具体參见 MSDN) 3) 单元格的边框颜色的设定 单元格的边框线的颜色能够通过 DataGridView.GridColor 属性来设定的。默认是 ControlDarkDark 。...(比方:值为Error的时候,单元格被设定为红色) 以下的演示样例:将“Colmn1”列的值改为大写。...// 将单元格值改为大写 string str = e.Value.ToString(); e.Value = str.ToUpper(); //...2) 行冻结 DataGridViewRow.Frozen 属性为 True 时, 该行上面的全部行被固定, 纵向滚动时固定行不随滚动栏滚动而上下移动。

    4.5K10

    C#二十八 数据绑定

    指定单元格是否为只读 ColumnCount DataGridView中显示的列数 RowCount DataGridView中显示的行数 Rows 所有控件的行 CurrentCell 当前单元格...说明 CurrentCellChanged 单击单元格时发生 CellContentClick 单击某个单元格时发生 从窗体设计工具箱窗口的“数据”卡片中拖一个DataGridView控件进窗体设计区域即可创建一个...Value); } } 要想获得你选中的某一行或某一列单元格的值,就需要用到前面提到的CurrentRow和CurrentCell两个属性,分别返回选中的行对象和返回选中的单元格对象。...下面分别从如下五个方面进行讨论: n 总外观设置 BackgroundColor:设置其背景颜色 BorderStyle:设置边框样式 CellBorderStyle:设置其单元格边框样式...DefaultCellStyle:设置单元格具体样式(字体颜色、字体种类、对齐方式和数据格式等) GridColor:设置网格线颜色 n 列标题外观 ColumnHeadersBorderStyle

    15010

    TDesign 更新周报(2022年7月第3周)

    table 组件,data 为空数据时,默认全选按钮会选中的问题兼容IE滚动条高度计算覆盖不全问题修复树形结构懒加载顺序问题可编辑单元格,修复 onEnter 无法触发 onEdited 问题;修复校验不通过时...,扩大选择组件的点击范围Table: 拖拽调整宽度,非边框模式,悬浮到表头时,显示表头边框 Bug FixesTable: 修复可编辑单元格,校验失败的信息无法清除问题Table: 树形结构,修复树形结构懒加载顺序问题...table 组件,data 为空数据时,默认全选按钮会选中的问题InputNumber: 修复初始化时对 null 及字符串校验异常Dialog: 多个 dialog 同时存在时使用 esc 关闭异常.../可编辑行,新增 showEditIcon,用于控制是否显示编辑图标table: 新增可编辑行的表格table: 可调整列宽,无边框表格,悬浮到表头时显示边框,方便用户寻找调整列宽的位置Button:...支持 href、tag、suffix API Bug FixesIcon: 修复iconfont高级用法由于t-icon的干扰导致渲染异常的情况table: 修复可选中行table组件,data为空数据时

    2.8K30

    首页自定义,你想知道的都在这里!

    3、 单个图片选中以后,设置为居中(每一个图片都需要单独居中处理),如果要设置超链接,请选中图片,点击添加超链接以后,保存。...4、 全部调整好以后,选择表格边框,设置边框为0,点击右下方“保存”按钮,完成首页展示的设置。...电脑端首页自定义设置 添加新区块步骤(以下图2*2区块为例) 1、在“首页排版”点击“添加新区块”,选择需要添加的左/右侧区块 2、点击工具栏中的插入表格,选择2*2表格 3、在每个单元格中插入希望展示的图片...,如左图所示 4、选中一张图片点击“表格”>“单元格”>“单元格属性”,在水平对齐和垂直对齐一栏选择“居中”,另外三张图做相同操作 5、选中表格点击“表格属性”,在将边框数值改为0,隐藏表格 6、图片排版完成后...,给对应的图片添加你希望跳转到的链接即可 建议图片尺寸 前面数字为宽度,后面数字为高度 宽度大家可以按照下面的建议设置,高度可以根据需要更改~ 电脑端: 手机端: 今天的教程就到这里啦,你学会了吗!

    1.4K40

    从零开始学 Web 之 HTML(三)表单

    cellspacing:单元格与单元格的距离 cellpadding:内容距边框的距离 bgcolor:表格背景颜色 align=”left | right | center” ​ 如果直接给表格用...填写内容:合并同一行的单元格,合并行数为2 填写内容 :合并同一列的单元格,合并列数为3 1<table border...6、表格标题 1 2 3 4 5 注意:将 td 改为 th 特点:标题的文字自动加粗水平居中对齐 7、边框颜色...table 的背景设置为边框的颜色,然后填充表格为其他的颜色,设置边框距边框的距离 cellpadding 为0,单元格与单元格之间的距离 cellspacing 为细线边框的宽度,最后看到的细线边框其实是背景颜色...PS:当有多个单选框是如何设置只能有一个被选中? 只有将 name 的值设置相同的时候,才能实现单选效果。

    2.9K30

    Spread for Windows Forms快速入门(16)---用Spread设计器创建和编辑图表

    在Spread设计器启动后,在表单中输入下列数据,注意把存放销售数据的单元格设置为数字单元格类型: ?...例如,如果把C3单元格中1月份的皮本月销售额从8400修改为28400,可以看到图表中表示皮本月销售额的蓝色线条的起点会变高。 除了修改数据的值以外,也可以对图表的数据区域进行修改。...选中图表对象后,可以看到图表对应的数据区域出现蓝色边框,可以拖动蓝色边框的角调整数据区域的大小,或者把鼠标放在蓝色边框的边上移动图表对应的数据区域。 下图是修改C3值和缩小数据区域后的效果。 ?...下面以添加标题和修改绘图区背景色为例介绍如何使用图表设计器: 鼠标右键单击左侧图表对象模型中的“标签区”,选中弹出的菜单“标签区”,为图表建立一个新标签,新标签的缺省位置在图表上方。...左键点击图表对象模型中的“Y绘图区”,编辑右边的属性框中BackWall的Fill属性,在弹出的填充对话框中选择“纯色填充”,设置颜色为浅绿色(RGB(128,255,128))。

    1.5K80

    C# winform DataGridView 常见属性

    ——————————————————————————– // 设定 (0, 0) 为当前单元格 DataGridView1.CurrentCell = DataGridView1[0, 0]; 在整行选中模式开启时...(详细参见 MSDN) 3) 单元格的边框颜色的设定 单元格的边框线的颜色可以通过 DataGridView.GridColor 属性来设定的。默认是 ControlDarkDark 。...4) 单元格的上下左右的边框线式样的单独设定 CellBorderStyle只能设定单元格全部边框线的式样。...(比如:值为Error的时候,单元格被设定为红色) 下面的示例:将“Colmn1”列的值改为大写。...“Column1”列的单元格 if (dgv.Columns[e.ColumnIndex].Name == “Column1” && e.Value is string) { // 将单元格值改为大写

    3.9K40

    Excel 常用的九十九个技巧 Office 自学教程快速掌握办公技巧

    6、怎样快速删除“0”值单元格行按组合键【Ctrl+F】导出查找对话框,选择【查找】选项卡,在输入栏中输入:0,点击【全部查找】再按组合键【Ctrl+A】就会显示表格中内容为 0 的所有单元格,选中单元格后右击...13、快速定位边缘单元格选中数据区域任意一个单元格,鼠标移至单元格的下边框线上,当鼠标箭头变为实心状态时双击单元格下框线,即可快速跳转到该列数据最后一行。...49、快速提取数据先在单元格内输入需要提取的数据,将鼠标移至单元格右下角,出现黑色实心图标时向下拖动填充即可快速提取需要的数据。...74、将表格数据显示为整数将表格数据显示为整数选中所有的数据,然后按快捷键CTRL+SHIFT+1,所有的数据小数点就不显示出来了,同时在千位有一个千分符号。...99、表格瞬间高大尚表格采用粗边框,标题行用深色填充白色字体,正文表格采用和标题行相同颜色的浅色调。

    7.2K21

    C#—— DataGridView控件的各种操作总结(单元格操作,属性设置)

    // 设定 (0, 0) 为当前单元格 DataGridView1.CurrentCell = DataGridView1[0, 0]; 在整行选中模式开启时,你也可以通过 CurrentCell 来设定选定行...(详细参见 MSDN) 3) 单元格的边框颜色的设定 单元格的边框线的颜色可以通过 DataGridView.GridColor 属性来设定的。默认是 ControlDarkDark 。...4) 单元格的上下左右的边框线式样的单独设定 CellBorderStyle只能设定单元格全部边框线的式样。...(比如:值为Error的时候,单元格被设定为红色) 下面的示例:将“Colmn1”列的值改为大写。...“Column1”列的单元格 if (dgv.Columns[e.ColumnIndex].Name == "Column1" && e.Value is string) { // 将单元格值改为大写

    9.9K32
    领券