/ / जेटीबल नीति। तालिका के नीचे एक ग्रिडबैगआउटआउट पैनल पर शून्य स्थान। - जावा, स्विंग, जेटेबल, ग्रिडबैगआउटआउट

जेटीबल नीति। तालिका के नीचे एक ग्रिडबैगआउटआउट पैनल पर शून्य स्थान। - जावा, स्विंग, जेटेबल, ग्रिडबैगआउटआउट

यह इस सवाल की निरंतरता है जावा जेपीनल के व्यक्तिगत घटकों का आकार बदल रहा है इस बार फ्रेम में केवल एक टेबल और एक JTextArea है। तालिका और JTextArea के बीच एक बड़ा खाली क्षेत्र दिखाई देता है। यह myPanel.java है:

import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;

public class myPanel extends JPanel {
public myPanel() { // Creating a vertical Box layout with five sections, placing jpanels there

//First panel with a table

String[] columnNames = {"First", "Second", "Third", "Fourth"};
Object[][] data = {{"11", "12", "13", "Forteen"},{"21", "22", "23", "Twenty four"}};
JScrollPane scrollPane1 = new JScrollPane(new JTable(data, columnNames));

//Second panel with a text area

JTextArea ecnArea = new JTextArea(10, 20);
ecnArea.setText("");
ecnArea.setName("Note");
//ecnArea.setLineWrap(true);
//ecnArea.setWrapStyleWord(true);
JScrollPane myScrollBar = new JScrollPane(ecnArea);

//Placing everything in a container
this.setLayout(new GridBagLayout());

GridBagConstraints c = new GridBagConstraints();
c.anchor =GridBagConstraints.CENTER;
c.fill = GridBagConstraints.BOTH;
c.weightx = 0.5;
c.weighty=0.5;
c.gridx = 0;
c.gridy = 0;
this.add(scrollPane1, c);
c.gridy++;
this.add(myScrollBar, c);
}
}

यह क्यों दिखता है? इसे कैसे निकालें?

उत्तर:

जवाब के लिए 2 № 1

आपको इन पंक्तियों को जोड़ना चाहिए:

JTable table = new JTable(data, columns);
table.setPreferredScrollableViewportSize(new Dimension(500,60));
JScrollPane scrollPanel = new JScrollPane(table);
//scrollPanel.getViewport().setBackground(color.WHITE; //optional, but looks nicer

आपको आयाम और रंग भी आयात करने की आवश्यकता होगी।