Java 为该组件构造函数之外的某个swing组件添加KeyListener对象时,KeyAdapter不会';行不通
当我尝试为这个组件构造函数之外的某个swing组件添加一个KeyListener对象时,KeyListener在之后没有响应,为什么?例如:Java 为该组件构造函数之外的某个swing组件添加KeyListener对象时,KeyAdapter不会';行不通,java,keylistener,Java,Keylistener,当我尝试为这个组件构造函数之外的某个swing组件添加一个KeyListener对象时,KeyListener在之后没有响应,为什么?例如: public class ActionViewer extends SimpleViewer implements ActionListener { public ActionViewer(Dimension __wndSize, String pgnPath,
public class ActionViewer extends SimpleViewer
implements ActionListener
{
public ActionViewer(Dimension __wndSize, String pgnPath,
PerspectiveProjection __persp)
{
super(__wndSize, pgnPath, __persp);
...
cMng=null;
...
}
///
public void setCamera(double xMin, double xMax,
double yMin, double yMax,
double zMin, double zMax)
{
if(!isCameraInit())
{
if(cMng==null)
cMng=new CameraControl();
this.addKeyListener((KeyListener)cMng);
fCamInit=true;
}
setCameraBounds(xMin, xMax, yMin, yMax, zMin, zMax);
}
...
}
当我在main中调用setCamera时,什么都没有发生
...
ActionViewer scene = new ActionViewer(wndSize, pgnPath, persp);
scene.setCamera(xMin, xMax, yMin, yMax, zMin, zMax);
...
我认为初始化有问题,你能检查一下init监听器的位置吗?
try{}catch
all方法setCamera
并打印所有问题,这应该能帮助你找到问题。你的问题很模糊,至少对我来说很难回答。你能提供更多的上下文吗?你能把你的代码提炼成一个小的可编译单元来演示你的问题吗?您知道带有键侦听器的组件是否具有焦点(因为焦点是键侦听器工作的绝对要求)?通常,使用键绑定比使用键侦听器更好。你探索过这个选项吗?