当前位置:  技术问答>java相关

怎样设置JTable的颜色???

    来源: 互联网  发布时间:2015-09-06

    本文导语:  比如要根据判断某列的值,来设置表格某行的不同颜色.(字体色) | 关于JTable的显示问题已经有不少了.继续强烈建议学习理解MVC结构. JTable的数据保存在model里边,负责显示的是TableCellRenderer(...

比如要根据判断某列的值,来设置表格某行的不同颜色.(字体色)

|
关于JTable的显示问题已经有不少了.继续强烈建议学习理解MVC结构.
JTable的数据保存在model里边,负责显示的是TableCellRenderer(这是一个接口).Swing里边有一个DefaultTableCellRenderer(类)扩展JLabel.一般扩展这个类就可以了.在自己的扩展类里边实现
Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean cellHasFocus,int row,int col)
这个方法.

这样说吧:
public class MyRendeer extends DefaultTableCellRenderer{
  public Component getTableCellRendererComponent(JTable table,Object
           value,boolean isSelected,boolean cellHasFocus,
           int row,int col)
  {//这个返回的component就是每个Table的小格子cell的负责显示的绘制器.
   //你可以返回任何component,比如CheckBox,TextField等等.不过一般是用  
   //JLabel,其中DefaultTableCellRenderer就是扩展JLable
   //其中参数中的Object就是你这一行要显示的数据,你需要将其显式转换为你 
  // 自己的类型,比如String str = (String)Object.这需要根据你model中的
  //数据对象的类型来定.row,col就是当前对象锁在的行和列.

   if(col == 2){
      String strTemp = (String)Object;
      if(strTemp.length>=4){
         setBackground(Color.red);
         setForeground(Color.blue);
      } 
   
   }
...

   return this;
      
  }
}

这里我只是个示意,你还要考虑如果这一行的数据被选中的时候,或者hasFocus的时候应该是什么颜色,不过都是在这个方法中处理.

myTable.setCellRenderer(new MyRenderer());
就可以了.

    
 
 

您可能感兴趣的文章:

  • gtk2.0中是不是不能给按钮改变颜色??怎样给当前窗口设置背景颜色和背景图画
  • Ubuntu里怎么设置终端里头的颜色?
  • vim颜色设置
  • ScrollView滚动条颜色的设置方法
  • linux 远程登录 sun solaris 颜色设置
  • curses编程库中的form中的一个表单域是否可以设置多种颜色
  • 如何设置jbutton的文本颜色?谢谢
  • linux下颜色设置问题,高分相赠,马上给分
  • nano字体颜色怎么设置呢?
  • 请教一个Codeblock设置问题--如果改变Build message窗口内字体颜色
  • 如何设置Label和Button里的字体大小和颜色?Button和Label好像没有setFont()这样的函数。
  • linux中 vi编辑器 里如何 设置标准 颜色 ,让背景和字体 变得有颜色
  • linux隐藏工具栏后如何恢复?背景颜色如何设置?
  • Linux中如何设置文件以及文件夹的颜色?
  • 表格奇偶行设置不同颜色的核心JS代码
  • C语言游戏必备:光标定位与颜色设置的实现方法
  • linux BASH shell下设置字体及背景颜色
  • 怎样设置JButton的大小,形状(只是要它凸起),位置,颜色?
  • android 设置控件的颜色字体的方法
  • 帮忙,我用vi时字体全是白色,怎么设置才会使不同内容出现不同颜色啊
  • 怎样在JTable中得到和设置每个单元的值,给20分,大虾教我!
  • IP地址数字互转 iis7站长之家
  • JTable 中如何设置单元的背景色。
  • 有什么根据表的内容长度自动设置jtable列宽的方法?
  • 一个简单的问题:如何设置jTable使表格不可编辑,但可以选取行?
  • 怎样给jtable设置列名?
  • 请问如何设置表格JTable显示的时候只提供选择一条记录?(具体问题3个)高分,在线等待
  • 谁知道设置Jtable的内容对齐方式?如数字右对齐
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Bitsets 成员 count():返回被设置的位的个数
  • 在使用gcc之前,需要先设置环境吗?如何设置?在线等!!!
  • C++ I/O 成员 precision():设置精度
  • 用grub能否设置启动密码?如何设置?
  • C++ Bitsets 成员 any():如果有任何一个位被设置就返回true
  • 在linux服务器上面设置squid后怎么设置可以使客户端能使用QQ?
  • C++ Double Ended Queues(双向队列) 成员 assign():设置双向队列的值
  • 请问设置一个和root权限差不多的用户怎么设置?
  • C++ Vectors 成员 reserve():设置Vector最小的元素容纳数量
  • 用JSP。XML开发网站。请问那种环境设置最好。该如何设置环境
  • C++ Bitsets 成员 set():设置位
  • 环境变量设置设置与显示不一致
  • C++ Bitsets 成员 none():如果没有位被设置则返回true
  • linux下到底如何设置环境变量?在哪设置?详细具体点
  • C++ Strings(字符串) 成员 resize():重新设置字符串的大小
  • 紧急求救各位了:linux下有没有有设置报文最小长度的命令(好像只有设置报文最大长度MTU,通过ifconfig)?
  • Windows7自带防火墙设置:启动,关闭及高级设置
  • 怎么设置在Linux上面设置WEB服务器?请各位高手指教!!!
  • C++ Strings(字符串) 成员 reserve():保留一定容量以容纳字符串(设置capacity值)
  • linux中端口号设置是在哪个配置文件,该如何设置?
  • C++ I/O 成员 setf():设置格式标志
  • 100求救 jrun3.0 里的beans的设置,你登陆我的机器设置


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3