gpt4 book ai didi

java - JOptionPane 内的 JPanel 内的 JTable 不会根据需要调整大小

转载 作者:行者123 更新时间:2023-12-02 06:59:57 25 4
gpt4 key购买 nike

我在带有 GridLayoutJPanel 内有两个 JTable 对象。我将它们放在 JOptionPane 中,并将它们显示为 OK_CANCEL 弹出窗口。我还在两个表上放置了一个 JScrollPane

但是,JOptionPane 的大小非常巨大。我尝试使用以下方法设置不同的表格、滚动 Pane 和 jpanel 大小:

table.setSize(int w, int h)
jpanel.setSize(int w, int h)
jscrollpane.setSize(int w, int h)

但这些都不会导致 JOptionPane(或表格)变小。

看起来是这样的,我使用1366*768作为分辨率。上面提到的这些都不会产生任何影响

This is how it looks

private void showEditItemSuppliersDialog()
{
String newItemSupplierTables [] = { "#", "Name", "" };
JPanel panel = new JPanel(new GridLayout(0, 2, 5, 5));

/* table 1 */
allItemsEditItemSuppliersTableModel = new DefaultTableModel(null, newItemSupplierTables);

allItemsEditItemSuppliersTable = new JTable(allItemsEditItemSuppliersTableModel);
allItemsEditItemSuppliersTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

JScrollPane allItemsEditItemSuppliersTableScrollPane = new JScrollPane();
allItemsEditItemSuppliersTableScrollPane.setViewportView(allItemsEditItemSuppliersTable);
/* table 1 end */

/* table 2 */
allItemsEditItemSuppliersAllTableModel = new DefaultTableModel(null, newItemSupplierTables);

allItemsEditItemSuppliersAllTable = new JTable(allItemsEditItemSuppliersAllTableModel);
allItemsEditItemSuppliersAllTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

JScrollPane allItemsEditItemSuppliersAllTableScrollPane = new JScrollPane();
allItemsEditItemSuppliersAllTableScrollPane.setViewportView(allItemsEditItemSuppliersAllTable);
/* table 2 end*/

panel.add(allItemsEditItemSuppliersTableScrollPane);
panel.add(allItemsEditItemSuppliersAllTableScrollPane);

int option = JOptionPane.showConfirmDialog(null, panel, "Edit", JOptionPane.OK_CANCEL_OPTION);

if (option == JOptionPane.YES_OPTION)
{
System.out.println("Pressed OK");
}
}

最佳答案

您应该使用 setPreferredScrollableViewportSize(Dimension) 设置表格的首选视口(viewport)大小.

关于java - JOptionPane 内的 JPanel 内的 JTable 不会根据需要调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16801708/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com