Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从另一个类访问JavaFXImageView_Java_Javafx_Scope - Fatal编程技术网

如何从另一个类访问JavaFXImageView

如何从另一个类访问JavaFXImageView,java,javafx,scope,Java,Javafx,Scope,我最近实现了一个简单的JavaFXGUI。我有一个扩展TableView的类,它引用了一个ImageView(构造函数参数)。一旦选定一行。程序获取行的对象字符串。然后将其指定给ImageView 这是在main方法中工作的原始代码 但当我尝试将其作为参数添加时,会出现错误。无法访问ImageView。不执行简单的imageView.setImage(image) public TableViewCenter(ImageView cardImageView){ 选择行后,系统将执行所有

我最近实现了一个简单的JavaFXGUI。我有一个扩展TableView的类,它引用了一个ImageView(构造函数参数)。一旦选定一行。程序获取行的对象字符串。然后将其指定给ImageView

这是在main方法中工作的原始代码

但当我尝试将其作为参数添加时,会出现错误。无法访问ImageView。不执行简单的imageView.setImage(image)

  public TableViewCenter(ImageView cardImageView){

选择行后,系统将执行所有操作,而不使用.setImage(image)函数


这可能是一个范围问题,或者是JavaFX访问不同组件的问题。

我找到了解决问题的方法!侦听器的实现应该在imageView所在的类中声明

如何从tableview中公开imageView?ImageView是新表视图的一部分吗??如果是这样-您可能需要在main方法->ImageView ImageView=new ImageView()中使用类似tableView.getCardImageView().set()的内容;->MyTableView MyTableView=新建MyTableView(imageView);MyTableView实例与ImageView一起插入HBox。我试着把代码和主代码分开。并使MyTableView对象(实践OOP)我不理解其结构。你能把所有的代码都放在那里吗?ImageView对象和其他Java对象一样。您可以将对它们的引用传递给其他类和方法,就像对其他任何对象一样。显示定义公共TableViewCenter(ImageView cardImageView)方法的代码,以及调用该方法的位置。检查行:19、55、64检查行:30、175、187
  public TableViewCenter(ImageView cardImageView){
              try{
                Image image = new Image(getClass().getResource("/resources/fellowshipcards/"+imageID).toURI().toString());
                System.out.println(imageID);
                cardImageView.setImage(image);
            }catch(Exception ex){}