2012-03-09 55 views
5

Tôi đang cố tắt "chính" JFrame khi khung mới bật lên. Tôi muốn nó để bạn không thể bấm hoặc kéo bất cứ điều gì trên khung đó. Tôi đã thử làm cho khung hình mới là JDialog, nhưng điều đó đã không vô hiệu hóa khung hình khác. Tôi cũng xem xét các bài viết khác về điều này, mà đề nghị để làm cho nó một JDialog nhưng nó vẫn không hoạt động. Tôi thực sự cần giúp đỡ làm điều này. cảm ơn. Đây là codeIi đang sử dụng để làm cho JDialog, là bất kỳ vấn đề của họ với nó?Tắt JFrame khi một JFrame mới được mở

editDialog=new JDialog(IntroScreen.frame); 

IntroScreen.frame đại diện cho khung "chính".

+1

gosh, điều này chưa bao giờ được hỏi trước ... –

+0

là mỉa mai này hay không ..? không thể nói –

Trả lời

11
+0

Đúng, câu trả lời đúng - cửa sổ phụ thuộc phải là một JDialog, không phải là một JFrame. Hoặc là trao đổi hoặc trao đổi thông qua một CardLayout. –

+0

Tôi sẽ nghiên cứu vấn đề này và cố gắng triển khai dự án của tôi :) –

+0

@ CaptainGh0st: bạn đã chấp nhận câu trả lời sai. Cái này đúng. –

4

Nếu bạn muốn sử dụng nhiều JFrame s bạn có thể sử dụng phương pháp setEnabled() khi bạn mở JFrame khác.

frame.setEnabled(false); 

Nếu không, bạn nên đi với JDialog và phương pháp của nó setModal().

+0

Cảm ơn bạn, tôi không biết làm thế nào tôi đã không tìm thấy phương pháp này khi tôi đã đi qua các phương pháp. -__- CẢM ƠN. –

+2

Bạn đã chọn câu trả lời 'đúng' cho câu hỏi sai. Cách dễ dàng được chỉ ra bởi HFOE & mKorbel. Nhiều khung hình sẽ khiến bạn căng thẳng hơn. –

+0

Cảm ơn bạn đã chỉ ra điều đó. Tôi sẽ chỉnh sửa câu trả lời của mình. – alexvetter