Java 无法跨Netbeans窗体访问变量

Java 无法跨Netbeans窗体访问变量,java,netbeans,media,public,Java,Netbeans,Media,Public,我使用Java媒体框架用Java编写了一个媒体播放器(是的,我知道它非常古老!) 在Netbeans上,我遇到了以下问题: 我有一个浏览按钮,它选择文件,初始化播放器并开始播放。问题是,该按钮处于私有无效状态,因此玩家无法通过表单访问。 这是jButton代码: private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) { Pl

我使用Java媒体框架用Java编写了一个媒体播放器(是的,我知道它非常古老!) 在Netbeans上,我遇到了以下问题: 我有一个浏览按钮,它选择文件,初始化播放器并开始播放。问题是,该按钮处于私有无效状态,因此玩家无法通过表单访问。 这是jButton代码:

    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
Player pla;
try{
   FileDialog fd = new FileDialog(this, "Select File", FileDialog.LOAD);
fd.show();
String filename = fd.getDirectory() + fd.getFile();
pla=Manager.createPlayer(new MediaLocator("file:///"+filename));


pla.start();

}
catch (Exception e){
    System.out.println(e.toString());
}
    // TODO add your handling code here:
}                                        
我如何使播放器在Jpanel上运行,以便面板中的任何按钮(Netbeans自动将所有jButtons设置为private void)都可以访问播放器pla

旁白:请有人给我推荐一个用于Java媒体的现代API(Xugler除外),最好使用FFMPEG,但不一定


谢谢

职业玩家可以有一个方法

通过反射,您可以返回任何按钮

JButton getButton(String nameButton) throws Exception{
    Field field = clazz.getClass().getField(nameButton);
    return (JButton) field.get(this);

}
就像你在任何课堂上一样;将
Player pla
声明为类中的字段,而不是此方法中的局部变量。