首頁 > Java > java教程 > 主體

調整 JDialog 的大小:為什麼 SetMaximumSize 可能不起作用?

DDD
發布: 2024-10-23 22:40:02
原創
251 人瀏覽過

Resizing a JDialog: Why SetMaximumSize May Not Work?

設定JDialog 的最大大小

問題

您希望JDialog 根據所包含的JPanel 的內容動態調整其大小,但即使設定setMaximumSize 屬性後,對話框的大小調整仍然超出指定的最大值。

解決方案

雖然設定最大尺寸似乎足夠,但 JDialog、BorderLayout 和 MaximumSize 之間的非常規互動可能會妨礙其功能。相反,請考慮使用 JList 的 setVisibleRowCount 方法或 getViewport().setPreferredSize(...) 來提供設定首選大小的相關資訊。

範例

在下面的範例中,一個對話方塊調整其大小以顯示最多 N 行的 JList。按一下「新增」按鈕後,行將會新增至清單中,導致對話方塊展開至達到最大大小。此時,會出現捲軸。

<code class="java">public class ListDialog {

    // ...

    private void append() {
        model.addElement("String " + String.valueOf(++count));
        list.ensureIndexIsVisible(count - 1);
        if (count <= N) {
            list.setVisibleRowCount(count);
            dlg.pack();
        }
    }

    // ...
}</code>
登入後複製

以上是調整 JDialog 的大小:為什麼 SetMaximumSize 可能不起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!