成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺談Swing中的渲染器接口

開發 后端
本文介紹Swing中的渲染器接口,文中的例子只是演示作用,加深你對渲染器的印象。但是真正吃透渲染器的各種技術,還需要自己深入的學習和實踐。

Swing的API具有很強的靈活性和可擴展性,比如標準復合數據型組件一般不需要進行渲染器擴展,就可以實現許多應用,但是當遇到需要自定義擴展的需求時,Swing的高度抽象靈活的MVC框架也可以優雅從容的完成。Swing的這一特色典型的體現在其渲染器擴展思想上。那么如何使用渲染器呢?如何自定義渲染器來擴展組件呢?如何將渲染器思想應用到自定義組件上呢?

復合數據類型的組件如JTable、JTree、JList以及JComboBox都定義適合自己類型的渲染器接口,它們與渲染器接口之間的映射關系如下表所示:

組件 渲染器
JTable TableCellRenderer
JTree TreeCellRenderer
JList ListCellRenderer
JComboBox ListCellRenderer

TableCellRenderer接口定義了JTable渲染器接口:

  1. public interface TableCellRenderer {  
  2. Component getTableCellRendererComponent(JTable table, Object value,  
  3. boolean isSelected, boolean hasFocus,  
  4. int row, int column);  

TreeCellRenderer定義了JTree的渲染器接口。

  1. public interface TreeCellRenderer {  
  2. Component getTreeCellRendererComponent(JTree tree, Object value,  
  3. boolean selected, boolean expanded,  
  4. boolean leaf, int row, boolean hasFocus);  

ListCellRenderer是JList、JComboBox的渲染器接口。

  1. public interface ListCellRenderer  
  2. {  
  3. Component getListCellRendererComponent(  
  4. JList list,  
  5. Object value,  
  6. int index,  
  7. boolean isSelected,  
  8. boolean cellHasFocus);  
  9. }  

其實,渲染器不僅僅可以用在標準組件JTable、JList、JTree和JComboBox,也可以在自己定制的組件中使用渲染器的思想實現復雜的界面,比如UML圖、工作流圖、電路圖,模擬JTable實現類似于MS Excel的電子表格控件,甚至可以實現自己的用戶界面設計工具。前面文章中曾經提到過的數據庫設計插件和報表設計插件就是根據渲染器原理自定義出的組件。

因此,熟悉了Swing的結構尤其是渲染器的思想,加上一些額外的知識,比如double buffering、glass pane、robot、swing threading、color model、java2d等等,可以做出許多事情來。人有多大膽,地有多大產。但深入學習和了解Swing的基本結構,這是前提。今天的文章主要是以實例演示了這些渲染器的應用,文中的例子只是演示作用,加深你對渲染器的印象。但是真正吃透渲染器的各種技術,還需要自己深入的學習和實踐。

【編輯推薦】

  1. 介紹Swing線程相關處理
  2. 淺析Swing客戶端知識
  3. Swing線程解決方案
  4. 全面比較AWT和Swing
  5. 概述JSci.swing包的核心
責任編輯:佚名 來源: JavaEye
相關推薦

2009-07-16 10:11:06

渲染器RendererSwing組件

2009-07-15 13:48:26

Swing模型和渲染器

2017-12-26 14:27:24

2010-08-13 11:02:27

Flex渲染器

2009-07-15 09:59:11

Metal觀感Swing

2009-07-14 17:01:29

Look&FeelSwing

2014-06-18 10:34:41

Android字體渲染器OpenGL ES

2009-07-17 16:49:18

lookandfeelSwing

2009-07-16 16:01:55

EventQueue

2009-07-14 18:28:58

Swing入門

2009-07-15 13:06:38

Swing組件

2009-07-15 14:29:24

構造JListSwing

2009-07-17 12:44:01

NetBeans開發S

2009-07-16 12:58:50

Swing控件

2022-04-18 08:09:44

渲染器DOM掛載Vue.js

2010-08-13 11:21:31

Flex渲染器

2009-07-10 17:20:38

Swing構件AWT構件

2009-07-10 11:07:18

Swing和SWT

2009-07-15 16:29:41

Swing繪畫

2017-08-22 16:40:22

前端JavaScript接口
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久国产精品99久久久大便 | 国产精品久久国产精品 | 久久福利电影 | 日本一区二区三区在线观看 | 亚洲狠狠爱一区二区三区 | 91精品亚洲 | 久久婷婷国产麻豆91 | 91精品国产乱码久久久久久久久 | 欧美不卡网站 | 欧美成人精品一区二区男人看 | 91综合网| 久久99深爱久久99精品 | 中文字幕成人在线 | 91成人精品 | 国产精品久久久久久久久免费软件 | 日韩一级二级片 | 日本精品久久久一区二区三区 | 久久精品国产久精国产 | 免费观看一级视频 | 亚洲二区在线 | 中文字幕在线不卡 | 久久成人精品视频 | 国产精品亚洲精品日韩已方 | 成人av一区二区在线观看 | 成人在线影视 | av网站免费| 99精品久久久久久中文字幕 | 在线免费观看毛片 | 久久er精品 | 不卡一区二区三区四区 | 91在线视频免费观看 | 免费国产一区 | 激情黄色在线观看 | 一区二区三区欧美 | 久久久久久久久久毛片 | 在线观看国产91 | 欧美日韩大片 | 久久久亚洲一区 | 91天堂网 | 亚洲精品1 | 天天干,夜夜操 |