你好,大家好,我有我的Swing應用程序運行,但我需要創建一個「初始化類」在那裏我創建數據實例來填充程序,當我運行它 如果我創建一個實例與在MainJFrame構造它的工作完美,但數據我需要填充,將其發送至所有的面板從另一個類 這裏MainJFrame是我MainJFrame代碼:如何使用來自其他Java類的類實例和數據加載Java Swing MainJFrame?
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package UserInterface;
import Business.Initialization;
import Business.Inventory;
import Business.InventoryList;
import Business.Product;
import Business.ProductCatalog;
import Business.Store;
import Business.StoreDirectory;
import UserInterface.StarMarketAdmin.MarketAdminWorkArea;
import UserInterface.StoreAdmin.LoginStoreAdmin;
import java.awt.CardLayout;
import java.util.Collections;
import javax.swing.SwingUtilities;
public class MainJFrame extends javax.swing.JFrame {
/**
* Creates new form MainJFrame
*/
private StoreDirectory storeDirectory;
private InventoryList inventoryList;
private ProductCatalog productCatalog;
private Store store;
public MainJFrame() {
initComponents();
this.storeDirectory = new StoreDirectory();
this.inventoryList = new InventoryList();
this.productCatalog = new ProductCatalog();
this.store = new Store();
}
private void btnMarketAdminActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
MarketAdminWorkArea panel = new MarketAdminWorkArea(userProcessContainer,storeDirectory,inventoryList,productCatalog,store);
userProcessContainer.add("MarketAdminWorkArea", panel);
CardLayout layout = (CardLayout) userProcessContainer.getLayout();
layout.next(userProcessContainer);
}
private void btnStoreAdminActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
LoginStoreAdmin panel = new LoginStoreAdmin(userProcessContainer,storeDirectory,inventoryList,productCatalog);
userProcessContainer.add("LoginStoreAdmin", panel);
CardLayout layout = (CardLayout) userProcessContainer.getLayout();
layout.next(userProcessContainer);
}
}
現在,如果我創建一個實例,如:
Store s = storeDirectory.addStore();
s.setStoreName("Eddie's Market");
s.setStreet("Plainfield Pike");
s.setCity("Johnston");
s.setState("RI");
s.setCountry("USA");
在MainJFrame
它的工作100%,但我需要在另一個類中創建它,並在MainJFrame中將其從其中發送到所有其他pannels。 我該怎麼做?
看到我上次編輯時,通過將公共函數放在主機中,您可以在其他地方創建它。並從其他課程中獲得。 –
你可能會想看看[Model-View-Controller](http://en.wikipedia。org/wiki/Model%E2%80%93view%E2%80%93controller),這是Swing所做的一個重要概念,但和Swing的許多人一樣,要求開發人員實際上努力利用自己 – MadProgrammer