簡體   English   中英

Java - 在 JDialog/JFrame 上調用 Component#setName

[英]Java - Calling Component#setName on JDialog / JFrame

我想知道在Window子類上調用setName是否是個好主意。 我注意到,例如一個對話框的默認名稱為dialog0 這些名稱對 Swing 內部結構有任何重要意義嗎? 如果是這樣,我是在顯示窗口之前還是之后設置名稱有關系嗎? name的 getter/setter 的 javadoc 沒有顯示任何有用的信息。

我們的想法是覆蓋這些名稱,以便為不包含用戶數據的窗口獲得更通用的名稱。 通常我會使用putClientProperty東西,但由於Windows擴展了Component ,而不是JComponent ,這是不可能的。

通常我會使用類似 putClientProperty 的東西,但由於 Windows 擴展了 Component 而不是 JComponent,這是不可能的。

您可以使用JFrameJRootPane 它確實擴展了JComponent

JRootPane rootPane = frame.getRootPane();
rootPane.putClientProperty(...);

這將為您提供與框架關聯的唯一組件。

有關 Swing 窗口的一般結構,請參見如何使用根窗格

這些名稱對 Swing 內部結構有任何重要意義嗎?

不是我所知道的。

暫無
暫無

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

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