-1

我在这里有 Main 类,它是扩展的JFrame。在这里面我有一个Stockmenuactionperformed在另一个类股票中创建的函数。我的问题是,是否有可能如何从另一个函数访问此类库存..(通过)一些可访问的内容(因为类库存扩展了JPanel)..??

public class MainApp extends javax.swing.JFrame{

private void stockMenuActionPerformed(java.awt.event.ActionEvent evt) {                                          

    if (tabbedpaneAgenda.indexOfTab("SKLAD") == -1)
    {
        ImageIcon icon = new ImageIcon(System.getProperty("user.dir")+"\\src\\pics\\stock.png");
        stock st = new stock(MainApp.this);


    }
    else {}

}    
private void acces_class(){
   this.getClass().asSubclass(stock);
  } 
}
4

2 回答 2

0
public class MainApp extends javax.swing.JFrame{
    private Stock st;

    private void stockMenuActionPerformed(java.awt.event.ActionEventevt){  

        if (tabbedpaneAgenda.indexOfTab("SKLAD") == -1)
        {
            ImageIcon icon = new ImageIcon(System.getProperty("user.dir")+"\\src\\pics\\stock.png");
            st = new stock(MainApp.this);
        }
        else {}
    }    
    private void acces_class(){
        st.doSomething();
    } 
于 2013-10-23T14:21:52.970 回答
0

我认为您正在尝试测试 Java GUI 设计,据我所知,Java GUI 设计应该更好地使用 MVC(模型-视图-控制)设计模式来实现。在上面提到的 MVC 中,您将分离 JPanel(您将其放在您的视图中)和所有基本元素(它们将被放置并能够在您的模型中更改)。将您的主要功能放在控制器中,它将实例化您的模型和视图,以及两个适配器(作为模型和视图之间的通信器)。

在这种情况下,您不必担心对任何内部类的访问,因为您将拥有适配器来访问所有类型和所有变量,因为您将它们全部放入您的模型中。

于 2013-10-23T14:24:38.807 回答