- 浏览: 191827 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
wanglijunjsj:
谢谢,很有用
java log4j的一些总结 -
lxb_champagne:
this.init(); 类都没初始化好,this没用的。
java final变量的初始化问题 -
lg_asus:
上面代码有点小问题,最新代码:
public class Pr ...
判断素数 -
lg_asus:
测试10 million的以内的数据,算出所有素数时间在500 ...
判断素数 -
lg_asus:
文章中说错了:如果只是找一个数在不在其中,则可以直接遍历一次, ...
40亿不重复的正整数,如何判断一个数是否在其中
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.table.*; public class JTableDemo4 implements ActionListener{ JTable table = null; JButton button1,button2; public JTableDemo4(){ JFrame jf = new JFrame(); button1 = new JButton("數學老師"); button1.addActionListener(this); button2 = new JButton("學生阿呆"); button2.addActionListener(this); JPanel panel = new JPanel(); panel.add(button1); panel.add(button2); table = new JTable(new MyTableModel(1)); table.setPreferredScrollableViewportSize(new Dimension(500,300)); //設置行列的選擇模式 table.setColumnSelectionAllowed(true); table.setRowSelectionAllowed(true); JScrollPane scrollPane = new JScrollPane(table); scrollPane.getViewport().setBackground(Color.white); //paintCell();//第一處 jf.getContentPane().add(panel,BorderLayout.NORTH); jf.getContentPane().add(scrollPane,BorderLayout.CENTER); jf.pack(); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String...args){ new JTableDemo4(); } public void paintCell(){ for(int i=0;i<table.getColumnCount();i++){ table.getColumn(table.getColumnName(i)).setCellRenderer(new MyTableRenderer()); } } @Override public void actionPerformed(ActionEvent e){ if(e.getSource()==button1){ table.setModel(new MyTableModel(1)); } if(e.getSource()==button2){ table.setModel(new MyTableModel(2)); } //paintCell();//第二處 // System.out.println(table.getColumn("及格").getClass()); table.revalidate(); } } class MyTableModel extends AbstractTableModel{ Object[][] p1 = { {"阿呆",new Integer(78),new Boolean(true)} }; String[] n1 = {"姓名","成績","及格"}; Object[][] p2 = { {"阿瓜",new Integer(58),new Boolean(false)}, {"阿呆",new Integer(78),new Boolean(true)} }; //String[] n2 = {"姓名","成績","及格"}; //mode為1表示角色為阿呆,為2則表示角色為老師 int mode = 1; public MyTableModel(int i){ mode = i; } @Override public int getColumnCount(){ if(mode==1){ return n1.length; } else{ return n1.length; } } @Override public int getRowCount(){ if(mode==1){ return p1.length; }else{ return p2.length; } } @Override public Object getValueAt(int row,int col){ if(mode==1){ return p1[row][col]; }else{ return p2[row][col]; } } @Override public String getColumnName(int col){ if(mode==1){ return n1[col]; }else{ return n1[col]; } } @Override public Class getColumnClass(int col){ return getValueAt(0,col).getClass(); } @Override public boolean isCellEditable(int row,int col){ return true; } } class MyTableRenderer extends DefaultTableCellRenderer{ @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { if(value!=null){ switch(row%2){ case 0: setBackground(Color.cyan); //setForeground(Color.black); break; case 1: setBackground(Color.pink); //setForeground(Color.black); break; default: setBackground(Color.yellow); break; } } return super.getTableCellRendererComponent(table, value,isSelected, hasFocus, row, column); } }
這樣運行時,boolean類型數據是以JCheckBox來顯示的,可是如果把"第一處"與"第二處"都打開的話,boolean類型數據就用true false來顯示了,,請問怎么解決?
大家看到的話就幫我下忙啊。。。
发表评论
-
swt tree demo with a text editor
2012-12-25 16:41 1555项目需要,从XML中读取数据生成一个Tree,然后可以对叶子节 ... -
Paint in AWT andSwing
2012-04-20 21:32 0jdk 1.0中用的是AWT,有一个缺点,就是每个组件要和一个 ... -
SwingUtilities的invokeLater和invokeAndWait
2012-02-28 18:00 1170参考: http://blog.csdn.net/bzwm/a ... -
swing第三方jar增强功能
2012-02-14 16:34 2526原文:http://hb.qq.com/a/20101220/ ... -
swing 日期组件
2012-02-03 15:35 1161/** * chega * 2011-9-21上午 ... -
java swing全屏显示方式
2012-02-01 11:01 5143覆盖任务栏和不覆盖任务栏见:http://blog.csdn. ... -
带有行标题的JTable
2012-01-06 15:59 1251/** * @author chega * thi ... -
JColorChooser
2010-07-18 21:25 1182import java.awt.*; import ja ... -
JFileChooser
2010-07-18 20:17 1250import java.awt.*; import ja ... -
AbstractAction
2010-07-18 10:00 1837import java.awt.*; import ja ... -
JMenuItem和JTollBar
2010-07-18 09:34 1560import java.awt.*; import ja ... -
JTree
2010-07-17 16:41 1213import java.awt.*; import ja ... -
JTree
2010-07-17 14:58 1046import java.awt.*; import ja ... -
JTree
2010-07-17 13:17 1092import java.awt.*; import ja ... -
UndoableEditListener 和 DocumentListener
2010-07-15 21:24 1369import java.awt.*; import ja ... -
JTable增刪行列
2010-07-14 19:57 1458import java.awt.*; import ja ... -
JComboBox每個Item加圖標
2010-07-11 16:46 1293import java.awt.*; import java ... -
JComboBox
2010-07-11 16:33 1313JComboBox(ComboModel):可以繼承Abstr ... -
JList雙向列表
2010-07-11 15:43 815import java.awt.*; import java ... -
給JList每個Item加個圖標
2010-07-11 14:40 1413import java.awt.*; import ja ...
相关推荐
在这个特定的示例工程中,我们探讨了如何在`JTable`中使用自定义数据类型,特别是将Boolean类型的数据呈现为Checkbox的形式,同时根据Checkbox的勾选状态来改变单元格的背景颜色。这涉及到`TableCellRenderer`和`...
### Java的JTable:从数据库取数据显示在表格中的关键技术点 #### 一、数据库操作与JDBC连接 在Java中,使用JTable显示数据库中的数据是一个常见的应用场景。首先,我们需要了解如何通过Java Database ...
JTable 动态刷新数据 JTable 动态刷新数据是指在 Java Swing 应用程序中,使用 JTable 组件展示数据,并实时更新数据的过程。这种技术在很多实际应用场景中非常有用,如股票交易平台、实时监控系统、电子表格等。 ...
根据给定的文件信息,我们可以总结出以下关于如何使用Java从MySQL数据库中获取数据并在JTable中显示的相关知识点: ### 一、导入必要的库 在Java程序中操作MySQL数据库及Swing组件,需要导入以下几个包: 1. `java...
使用JTable显示数据查询的数据集 包含数据库连接
这个场景中,我们探讨的是如何使用JavaBean来动态地向`JTable`添加数据,并将这些数据保存到Sql Server数据库,然后在`JTable`中显示。以下是关于这个主题的详细知识点: 1. **JTable组件**: `JTable`是Java ...
实现设置JTable中某些单元格的背景色
JTable实现下拉动态加载数据,滑动动态加载数据,纯原生态java。
Java Swing 实现 JTable 检测单元格数据变更事件的方法示例 Java Swing 中的 JTable 是一个功能强大且灵活的表格组件,广泛应用于各种桌面应用程序中。然而,在实际开发中,我们经常需要检测单元格数据的变更事件...
在Java Swing应用中,JTable是一个非常常用的组件,用于显示和操作二维表格数据。当我们需要从Excel文件中读取数据并展示在JTable上时,就需要进行一系列的处理步骤。以下是一些关于如何实现这个过程的关键知识点: ...
### JTable数据模型设置与数据库综合应用解析 #### 一、引言 本文档主要介绍如何在Java应用程序中使用`JTable`组件结合SQL Server 2000数据库进行数据展示与管理。通过构建自定义的数据模型(`TableModel`),可以...
下面我们将详细探讨`JTable`与Excel数据交换的相关知识点。 1. **JTable基本概念** `JTable`是Java Swing中用于显示和操作表格数据的组件。它可以动态地展示和修改数据,支持排序、选择、编辑等操作。`JTable`依赖...
通过连接后台数据库,把后台数据显示在表格中。表格通过JTable和model方法构造和显示较为容易,其中model方法可以自然显示表格内容,本人学艺不精也是在经过各种试错之后,才得出了代码比较简易的方法,欢迎批评和...
在Java编程领域,`JTable`是Swing库中的一个核心组件,用于在GUI应用程序中显示和操作表格数据。`JTable`不仅提供了一个美观的界面来展示数据,还允许用户进行交互,如选择行、编辑单元格以及执行数据查询等操作。本...
在Java编程中,`JTable` 是Swing库中的一个组件,用于在GUI应用程序中展示二维表格数据。它常被用来显示和编辑数据库中的记录。本篇内容将深入讲解如何利用`JTable`来显示数据库中的记录,以及涉及到的相关技术如...
在Java编程环境中,`JTable`是Swing库中用于展示二维表格数据的组件,而将`JTable`中的数据导出到Excel是一种常见的需求,特别是在数据处理和报告生成的场景下。本教程将深入讲解如何实现这个功能,并提供一个名为`...
本教程将深入探讨如何利用JTable与Microsoft Access数据库进行交互,并将数据动态地显示在表格中。这对于开发需要从数据库获取并展示数据的桌面应用来说是至关重要的。 首先,我们需要了解JTable的基本构造。JTable...
这样的做法使得`JTable`更加灵活,可以适应各种复杂的数据显示需求。在实际项目中,你可以根据具体的需求对这个渲染器进行扩展和优化,比如添加更多的样式控制,或者处理不同类型的单元格数据。
`View`则负责数据显示和用户交互。 ### 二、`DefaultTableModel`的使用 在Java中,`DefaultTableModel`是`TableModel`的一个简单实现,用于创建和管理表格数据。它可以动态地添加、删除和修改行数据。以下是如何...
例如,可以通过实现`getTableCellRendererComponent`方法来自定义不同条件下的单元格背景色或前景色。 - **行渲染器**:对于整个行的颜色定制,可以通过覆盖`JTable`的`prepareRenderer`方法来实现。这种方式可以...