2014-09-24 36 views
-1

如何處理用戶登錄我有一個登錄對話框,當有人打開程序,它是可見的,並且它具有登錄/密碼,如果您的登錄是正確的,JFrame的將是可見的和隱藏對話框/處置...在Swing

在我的情況

現在,我使用的方法給用戶發送到JFrame

一個LoginDialog:

if(loginTrue) { 
    MainFrame mf = new MainFrame(); 
    mf.setLoggedUser(User); 
    mf.setVisible(true); 
} 

大型機:

public void setLoggedUser(User user) { 
    this.user = user; 
} 

確定其確定!

,但在我的MVC做了很多的.class將表示爲CardLayout不同的JPanel的愚蠢的想法,當程序被加載它構建所有panelClasses1至10日,CardLayout內

,所以我有添加setLoggedUser(User user)所有類

做:

panel1.setLoggedUser 
panel2.setLoggedUser 
panel3.setLoggedUser 
panel4.setLoggedUser 
panel5.setLoggedUser 
panel6.setLoggedUser 
... 

有沒有辦法改變和刪除所有這些代碼,並使用類似的東西來@Inject

回答

0

如果只能有一個登錄用戶,你可以在一個地方如聲明變量用戶像類MainFrame中的靜態變量。或者,如果可以有更多的登錄用戶,則可以定義一組MainFrame以獲得更好的界面。