Joe*_*man 5 java graphics swing
是否有一种方法(例如,通过事件?)来确定Swing组件何时变得“可显示”(根据Component.getGraphics的Javadocs)?
我尝试执行此操作的原因是可以调用getGraphics(),然后将其传递给组件的“渲染策略”。
我尝试添加ComponentListener,但componentShown似乎没有被调用。还有什么我可以尝试的吗?
谢谢。
另外,可以保留Graphics我收到的物品吗?还是有可能在产品生命周期的后期创建一个新产品Component?(例如,在调整大小/隐藏之后?)
添加层次结构监听器
public class MyShowingListener {
private JComponent component;
public MyShowingListener(JComponent jc) { component=jc; }
public void hierarchyChanged(HierarchyEvent e) {
if((e.getChangeFlags() & HierarchyEvent.SHOWING_CHANGED)>0 && component.isShowing()) {
System.out.println("Showing");
}
}
}
JTable t = new JTable(...);
t.addHierarchyListener(new MyShowingListener(t));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1798 次 |
| 最近记录: |