Swing JTable 具体解释
改变列头
flightTable.getTableHeader().setDefaultRenderer(new TableCellRenderer() {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
MButton btn = new MButton();
btn.setSkinColor(getSkinColor());
if (!isEnabledColorShinUI()) {
btn.setBorderPainted(true);
btn.setEnabledColorShinUI(isEnabledColorShinUI());
}
btn.setAlpha(0.9f);
btn.setText(value.toString());
// 去除背景颜色 改为透明
((JComponent) table.getTableHeader()).setOpaque(true);
((JComponent) table.getTableHeader()).setBackground(MUIManager.getColor(getSkinColor(), 0.2f));
return btn;
}
});
设置行颜色
DefaultTableCellRenderer cellRender = new DefaultTableCellRenderer() {
private static final long serialVersionUID = 5419938797587921762L;
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
// 浅绿:#5dd24d,浅蓝:#49a1e1,中紫:#a733b5 ,浅黄:#dfd74c,天蓝:#3880da
// 设置颜色
FlightDispatch flight = flightList.get(row);
int fdType = flight.FDTYPE;
// 状态为已到达的过站航班(进港并出港的航班,飞机号为同一飞机号):LightGreen(浅绿)
if (fdType == 3) {
setBackground(Color.decode("#5dd24d"));
}
// 状态为已到达的单进航班:MediumOrchid(中紫)
else if (fdType == 2) {
setBackground(Color.decode("#49a1e1"));
}
// 单出航班:White(白)
else if (fdType == 1) {
setBackground(Color.WHITE);
}
// 前方未起飞的航班:LightYellow(浅黄)
// 加油開始或补油開始或抽油開始:绿色
// 加油员接收任务到到达机位的这段时间(未点击到达机位动作之前,点击后就变绿色):黄色
// 异常航班(如状态为:延误、备降)红色
// 已取消的航班 :天蓝色
// 状态为前方起飞未到达本场的航班:LightBlue(浅蓝)
return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
}
};
cellRender.setHorizontalAlignment(SwingConstants.CENTER);
flightTable.setDefaultRenderer(Object.class, cellRender);
// flightTable.setSelectionBackground(Color.RED);
Swing JTable 具体解释的更多相关文章
- swing JTable
JTable 实例 import java.awt.Dimension; import java.awt.GridBagConstraints; import java.awt.GridBagLayo ...
- Swing JTable使用
package cn.ychx; import java.awt.Dimension; import java.awt.Toolkit; import java.sql.Connection; imp ...
- swing jTable排序问题(点击表头排序)
1.JDK6自带排序实现: tableName.setAutoCreateRowSorter(true); 2.其实界面设计中勾选一个属性就搞定了: .
- swing JTable 更新数据
rowData 是将要更新的表格内数据,coloumnName是将要更新的表头数据. table是原本的table对象,更新数据的时候要用 DefaultTableModel 类~ /*更新table ...
- Java Swing 之JTable及其简单的用法
我们都知道JTable需要使用一个Model配合才能更好地发挥其作用.而使用Model有好多种方法,但是难易程度却大大不同,比如说我们使用AbstractTableModel接口要实现里面的好多方法, ...
- java swing 开发 -JTable
最近利用空闲时间自己琢磨了一下java swing 编程,其实在从事javaweb之前我一直向往的就是java swing 开发,不知道为什么可能当时觉得Windows上的exe程序很是神奇,关于wi ...
- java swing 中JTable实现指定单元格为下拉框
利用自定义的CellEditor实现第四列第二行为下拉框,本列其余行为文本框 利用默认的DefaultCellEditor设置第五列整列为下拉框 package mypackage; import ...
- java swing 添加 jcheckbox复选框
总体上而言,Java Swing编程有两大特点:麻烦.效果差. 麻烦是说由于设计器的使用不方便(如果您希望使用窗体设计器通过快速拖拽控件建立您的Java Swing GUI程序,请您使用MyEclip ...
- Java API 各个包的内容解释
java.applet 提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类. java.awt 包含用于创建用户界面和绘制图形图像的所有类. java.awt. ...
随机推荐
- Kvm虚拟化安装与虚拟机创建
1. 验证CPU是否支持KVM:如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的. egrep '(vmx|svm)' /proc/cpuinfo 2. 关闭SELinux ...
- centos 磁盘分区格式化与挂载
1 查看系统里硬盘信息fdisk -l 2 磁盘分区fdisk /dev/sdc输入m显示帮助a:命令指定启动分区:d:命令删除一个存在的分区:l:命令显示分区ID号的列表:m:查看fdisk命令帮助 ...
- shell 文本加密
第一种:[ Python 与 Bash Shell 的结合 ]这个命令会让你输入一个字符串,然后会再输出一串加密了的数字. 加密代码[照直输入]:python -c 'print reduce(lam ...
- bzoj 3203: [Sdoi2013]保护出题人 凸包
题目大意: http://www.lydsy.com/JudgeOnline/problem.php?id=3203 题解 首先我们考虑对一大波僵尸来袭的情况进行分析 假设来袭的僵尸是\(\{ a_1 ...
- 【20181019T3】比特战争【最小生成树思想】
题面 [错解] Hmm不可做啊 要不按b排个序? 然后并查集瞎搞,刷刷刷过了样例 然后大样例大了几万倍 出了组小数据,Successful Hack 弃疗 水过10分 [正解] 用占领的边将顶点连起来 ...
- Codeforces Round #449 (Div. 2)ABCD
又掉分了0 0. A. Scarborough Fair time limit per test 2 seconds memory limit per test 256 megabytes input ...
- 【二分图】【并查集】XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem L. Canonical duel
给你一个网格(n<=2000,m<=2000),有一些炸弹,你可以选择一个空的位置,再放一个炸弹并将其引爆,一个炸弹爆炸后,其所在行和列的所有炸弹都会爆炸,连锁反应. 问你所能引爆的最多炸 ...
- 【数位dp】【二分】Gym - 101411H - Hotel in Ves Lagos
数位dp预处理之后,可以容易得到f(x),代表小于等于x的数中,有多少个不含13的.然后就能二分答案啦. #include<cstdio> #include<iostream> ...
- Activity(活动)生命周期(1)--返回栈
Android是使用任务(task)来管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也被称为返回栈(Back stack).栈是一种后进先出的数据结构,在默认情况下,每当我们启动了一个新的 ...
- Problem D: 指针:调用自定义排序函数sort,对输入的n个数进行从小到大输出。
#include<stdio.h> int sort(int *p,int n) { int i,j,temp; ;i<n-;i++) for(j=i;j<n;j++) if( ...