2015-05-09 25 views
-3

我對基礎軟件開發非常陌生,我正在使用JDK 8和Eclipse(Kepler)作爲我的IDE創建一個公共汽車票預訂軟件。除了正確的登錄會話外,我幾乎完成了管理模塊。我有一個問題,我請求你的赦免無法解釋。我該如何禁止在java中手動切換幀

Image: admin and user log in forms

在主要形式,有兩個按鈕,一個將帶您到管理員登錄形式和其他用戶登錄形式。在管理員表單中,主窗體在後臺運行。現在,如果我點擊該表單上的任何位置,管理員表單將被隱藏,實際上主窗體中的所有其他選項都可以運行。所以,我實際上也可以訪問用戶登錄表單。同樣,在以管理員身份登錄後,在管理選項表單中,我不僅可以搜索公交路線,還可以同時做其他事情。

同時運行的管理形式:

Image: admin forms running simultaneously

於是,我想到了兩種方法來解決這個問題。其一,防止背景表單被訪問(點擊該表單上的任何地方不會隱藏當前表單)和二,禁用背景表單。但我不知道該怎麼做。誰能幫我嗎?

感謝

編輯:在簡單的話,說我目前訪問管理日誌形式,所以我不能同時訪問的任何其他形式,如用戶登錄形式。

+1

我建議你添加圖片(或者如果你不能添加內聯圖片到你的情況,主持人會爲你編輯問題)的圖片鏈接,以及你想要實現的示範圖。如果你不知道如何實現某些東西,可能需要添加一些高級別的僞代碼來實現這個概念。我將這個問題標記爲「不清楚你要問什麼」,直到清理完畢。 – initramfs

+0

嗨,我怎麼添加圖片? –

+0

您應該可以通過按下編輯窗口頂部花括號旁邊的「圖像」圖標來嵌入內嵌圖像。如果內嵌圖像失敗,請將其粘貼爲超鏈接,主持人會爲您解決此問題。如果我沒有記錯,新用戶最多隻能有2個超鏈接,所以請謹慎選擇。 – initramfs

回答

2

所以,我想到了兩種方法來解決這個問題。其一,防止背景表單被訪問(點擊該表單上的任何地方不會隱藏當前表單)和二,禁用背景表單。但我不知道該怎麼做。

通常,一個應用程序應該只有一個JFrame

如果您需要兒童窗戶,那麼您應該使用modal JDialog。模式對話框將阻止用戶點擊框架,直到對話框關閉。

您創建JDialog的方法與創建JFrame的方法相同。但是,您確實需要將JFrame指定爲對話框的所有者。

+0

不幸的是,在這個階段我無法編碼。爲了更簡單,當我訪問一個表單(比如說管理員登錄表單)時,我無法訪問任何其他表單(如用戶登錄表單)。我怎樣才能做到這一點? –

+0

@RohanBanerjee,「不幸的是,在這個階段我不能編碼。」當然你可以。沒有理由不能這樣做,這是正確的解決方案。您只需將JFrame更改爲JDialog即可。任何其他解決方案將重寫Swing事件代碼。 – camickr

相關問題