0

ScrollPaneにjListがあり、フレームのサイズを変更すると、動作がおかしくなります。通常は次のよう 前 になります。左側のテーブルを水平方向に拡大すると、jListは次のようになります。 後

私は役に立つかもしれないGUIのいくつかのコードを投稿しています:

    scrlInterfaceList.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    scrlInterfaceList.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);

    //---- list1 ----
    lstInterfaces.setBorder(BorderFactory.createTitledBorder(LFwPolicyMaker.messages.getString("IpMacMatcher.MatchTab.controlPanel.interfaces.title")));
    lstInterfaces.setPreferredSize(null);
    lstInterfaces.setMaximumSize(new Dimension(55, 90));
    lstInterfaces.setMinimumSize(new Dimension(55, 90));

    lstInterfaces.setLayoutOrientation(JList.VERTICAL);
    lstInterfaces.setModel(new AbstractListModel() {

        String[] strings = getInterfaces();

        public int getSize() {
            return strings.length;
        }

        public Object getElementAt(int i) {
            return strings[i];
        }
    });
    scrlInterfaceList.setViewportView(lstInterfaces);

    setSelectedInterfaces();

    add(scrlInterfaceList,new GridBagConstraints(0, 5, 1, 1, 0.0, 0.0,
                GridBagConstraints.CENTER, GridBagConstraints.BOTH,
                new Insets(0, 0, 0, 0), 0, 0));

何が問題なのでしょう?コンボボックスのように、jListを水平方向に縮小し続けたいのですが、上のボタン

4

1 に答える 1

4

スクロールペインのGridBagConstraintsの重み値を1.0に設定してみてください

于 2012-08-01T11:32:53.633 に答える