我目前正在开发一个 Swing Applet,并且在其他类函数中引用我的自定义 AWT Canvas 组件(非常简单的扩展类)时遇到问题,例如通常使用 Netbean(7.0)的设计器创建的任何其他组件(即按钮) .
我在这里添加的自定义画布元素,我确信这将是合适的位置(尤其是在所有其他生成的组件刚刚在同一区域创建之后)
public void init() {
try {
java.awt.EventQueue.invokeAndWait(new Runnable() {
public void run() {
initComponents();
CustomCanvas myCan = new CustomCanvas();
myCan.setBounds(100, 100, 200, 200);
getContentPane().add(myCan);
...
但是,与生成的组件不同,我无法通过名称访问它们,而且似乎也无法通过其他方式(this.myCan)访问它们。我已经设置了一个示例函数,它将处理 Swing 表单上的(生成的)按钮来操作先前实例化的 myCan 组件:
private void btnManipCanvasActionPerformed(java.awt.event.ActionEvent evt) {
//Essentially Was wanting to call something here such as myCan.getGraphics().setRect...
}
你知道在那里访问 myCan 的方法吗?我是否应该将组件的自定义初始化放在不同的区域,以便可以公开访问它们?