簡體   English   中英

Java-Swing GUI窗口順序

[英]Java - Swing GUI Window Order

在以下代碼中,為什么“我的應用程序”窗口位於最前面? main方法首先構造此窗口,對嗎? 那么在生成“我的窗口” JFrame時不應該在后面嗎?

public class MyApp extends JFrame {
public MyApp() { 
super();
setSize(300,600); 
setTitle("My Application"); 
setVisible(true);
}
public static void main(String[] args) { 
MyApp application = new MyApp(); 
JFrame window = new JFrame(); 
window.setSize(600,300); 
window.setTitle("My Window"); 
window.setVisible(true);
} 
}

這只是未定義的行為。 不能保證任何一個窗口始終位於前面。 當我運行您的代碼(Mac OS X,Java 6)時,“我的窗口”出現在前面,但是毫無疑問,您正確地描述了系統中發生的情況。

1)你不能移動一個JFrame的toFront()在另一個JFrame

2)不要創建多個JFrame ,此Top-Level Container還有另一個問題,如toFronttoBack

3)您將JDialogJWindow視為另一個窗口

  • JFrame parent一起

  • 使用setModal如果需要)

  • 需要ModalityTypes

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM