我了解到你需要在完成使用它们时创建的Graphics对象上调用dispose()。但是,在创建Graphics对象时,我很难从API文档中找出答案。
显然,当一个Graphics对象被传递给一个回调时,我还没有创建它,也不应该把它丢弃(或者以我听过的方式修改它),如果我调用Graphics .create(),然后我创建它,我应该处理它。
但是当我调用Component.getGraphics()时呢?这是否会创建一个我负责处理的新Graphics2D对象,或者它是否返回对我不应该修改的现有对象的引用?文档没有说明。
答案 0 :(得分:2)
您只处置明确创建的Graphics对象。因此,在您的示例中,您不会在从Component.getGraphics()返回的对象上调用dispose,除非其文档明确声明该对象是为您创建的。