Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java CellRenderPane用于什么?_Java_Swing - Fatal编程技术网

Java CellRenderPane用于什么?

Java CellRenderPane用于什么?,java,swing,Java,Swing,类javax.swing.CellRenderPane“插入到单元格渲染器和使用它们的组件之间”和“只是为了阻止在配置渲染器时向上传播的repaint()和invalidate()方法。” 这是JavaDoc告诉我的,但它意味着什么?它是如何使用的,如果允许repaint()和invalidate()向上传播,会发生什么?具体的例子是特别受欢迎的。 < P>这意味着它被插入到组件树的中间(根植于顶层窗口),并且会吃某些事件,例如RePrime&ValuiDATE,以防止它们在组件包含层次结构中传

javax.swing.CellRenderPane
“插入到单元格渲染器和使用它们的组件之间”和“只是为了阻止在配置渲染器时向上传播的repaint()和invalidate()方法。”


这是JavaDoc告诉我的,但它意味着什么?它是如何使用的,如果允许
repaint()
invalidate()
向上传播,会发生什么?具体的例子是特别受欢迎的。

< P>这意味着它被插入到组件树的中间(根植于顶层窗口),并且会吃某些事件,例如RePrime&ValuiDATE,以防止它们在组件包含层次结构中传播。 为什么??因为重新绘制和失效是处理的潜在代价高昂的事件;在这种情况下没有必要;一个简单的组件(窗格)可以轻松地过滤它们


如果事件要传播,那么每个组件都将不必要地重新计算它们的布局(失效)并重新绘制(重新绘制)它们自己

你能举一个例子,说明这种重新绘制在其他情况下会不必要地发生吗?好吧,根据他们的说法,“当渲染器被配置时”。我只是解释了组件包含树的概念,以及事件如何向上传播和被吃掉/过滤(如果处理的话)。这两个特定事件(相对而言)在计算上比较昂贵。谢谢。如果我理解正确,当已知组件中的更改不会对其所在的容器或该容器中的任何其他组件的外观产生任何影响时,这非常有用,尤其是当存在许多此类组件(例如表中的单元格)时,因此重新计算布局和重新绘制将非常耗时。对吗?我想我需要去阅读Swing教程中的表格部分。