दिलचस्प पोस्ट
RequireJS और CommonJS के बीच का अंतर आईओएस 4 में गैर-आइपॉड संगीत को नियंत्रित करने के लिए पृष्ठभूमि में आईपॉड कंट्रोल कैसे सक्षम करें? एंड्रॉइड स्टूडियो और ग्रेडेल के साथ एक एंड्रॉइड लाइब्रेरी कैसे बनाएं? मैं इस preg_match केस को असंवेदनशील कैसे बना सकता हूं? कुकी कैसे हटाना है? वैश्विक कनेक्शन के लिए या सिंगलटन? डॉक करने वाले कंटेनर के लिए स्थिर आईपी असाइन करें सी में "रजिस्टर" कीवर्ड? जावा EE / J2EE से J2SE / JDK संस्करणों के बीच संबंध सी स्ट्रिंग में \ 0 प्रतीक का क्या अर्थ है? SQL क्वेरी के निष्पादन के आदेश Windows में एक अस्थायी निर्देशिका बनाना है? मैं सी # में क्लिपबोर्ड सामग्री परिवर्तनों की निगरानी कैसे करूं? मुझे सी # में "ब्लॉकों का उपयोग करने" का उपयोग कब करना चाहिए? कैसे स्प्रिंग अनुप्रयोग में सिस्टम पर्यावरण चर को पढ़ने के लिए

क्यों जेपीएसपैक्शन में जेस्क्रोलपैन अपनी सारी सामग्री नहीं दिखा रहा है?

मैं एक जेपीएनएल में घटकों को जोड़ने की कोशिश कर रहा हूं, फिर इस पैनल को जेएससीआरओआरपीएन में डाल दिया, फिर जेपीएसपैक्शन में जेपीएसपैनल डाल दिया।

समस्या: केवल 1 9 लाइन के घटकों को जोड़ा गया। यदि आप कंडीशन काउंटर को 1 9 या उससे कम में बदलते हैं तो घटकों की लाइनों की संख्या निर्धारित करने वाली एक लूप है, तब उन सभी को प्रदर्शित किया जाएगा।

यह समस्या का एक SSCCE है

import java.awt.Dimension; import javax.swing.GroupLayout; import javax.swing.JButton; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextField; import javax.swing.SwingConstants; public class DynamicGroupLayout extends JPanel { JButton addRecordButton; JTextField[] FieldsArray; JLabel[] LabelsArray; GroupLayout layout; JScrollPane scrollPane; public DynamicGroupLayout() { addRecordButton = new JButton("add record"); layout = new GroupLayout(this); this.setLayout(layout); layout.setAutoCreateGaps(true); layout.setAutoCreateContainerGaps(true); scrollPane = new JScrollPane(this); scrollPane.getVerticalScrollBar().setUnitIncrement(16); scrollPane.setPreferredSize(this.getPreferredSize()); setTextFields(); showDialog(); } @Override public Dimension getPreferredSize() { return new Dimension(400, 500); } private void setTextFields() { int num = 30; //If 19 or less, all components shown. String[] labelsNames = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30" }; FieldsArray = new JTextField[num]; LabelsArray = new JLabel[num]; GroupLayout.ParallelGroup parallelGroupHoriz = layout.createParallelGroup(); layout.setHorizontalGroup(layout.createSequentialGroup().addGroup(parallelGroupHoriz)); for (int i = 0; i < num; i++) { System.out.println(i); LabelsArray[i] = new JLabel(labelsNames[i]); FieldsArray[i] = new JTextField(10); FieldsArray[i].setMaximumSize(new Dimension(200, 3)); LabelsArray[i].setLabelFor(FieldsArray[i]); parallelGroupHoriz.addGroup(layout.createSequentialGroup() .addComponent(LabelsArray[i]) .addComponent(FieldsArray[i])); } parallelGroupHoriz.addComponent(addRecordButton, GroupLayout.Alignment.CENTER); GroupLayout.SequentialGroup sequentialGroupVert = layout.createSequentialGroup(); layout.setVerticalGroup(sequentialGroupVert); for (int i = 0; i < num; i++) { sequentialGroupVert.addGroup(layout.createParallelGroup(). addComponent(LabelsArray[i]) .addComponent(FieldsArray[i])); } sequentialGroupVert.addComponent(addRecordButton); for (int i = 0; i < num; i++) { layout.linkSize(SwingConstants.HORIZONTAL, LabelsArray[i], LabelsArray[0]); } } private void showDialog() { JOptionPane.showOptionDialog(null, scrollPane, "Update data", JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, null, null); } public static void main(String[] args) { DynamicGroupLayout d = new DynamicGroupLayout(); } } 

वेब के समाधान से एकत्रित समाधान "क्यों जेपीएसपैक्शन में जेस्क्रोलपैन अपनी सारी सामग्री नहीं दिखा रहा है?"

जैसा कि इस संबंधित उदाहरण में दिखाया गया है, आप व्यूपोर्ट के पसंदीदा आकार को ओवरराइड कर सकते हैं।

यहां छवि विवरण दर्ज करें

 import java.awt.Dimension; import java.awt.EventQueue; import javax.swing.GroupLayout; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextField; import javax.swing.SwingConstants; /** * @see https://stackoverflow.com/a/14858272/230513 * @see https://stackoverflow.com/a/8504753/230513 * @see https://stackoverflow.com/a/14011536/230513 */ public class DynamicGroupLayout { private static final int NUM = 30; private JTextField[] fields = new JTextField[NUM]; private JLabel[] labels = new JLabel[NUM]; private JPanel create() { JPanel panel = new JPanel(); GroupLayout layout = new GroupLayout(panel); panel.setLayout(layout); layout.setAutoCreateGaps(true); layout.setAutoCreateContainerGaps(true); GroupLayout.ParallelGroup parallel = layout.createParallelGroup(); layout.setHorizontalGroup(layout.createSequentialGroup().addGroup(parallel)); GroupLayout.SequentialGroup sequential = layout.createSequentialGroup(); layout.setVerticalGroup(sequential); for (int i = 0; i < NUM; i++) { labels[i] = new JLabel(String.valueOf(i + 1), JLabel.RIGHT); fields[i] = new JTextField(String.valueOf("String " + (i + 1))); labels[i].setLabelFor(fields[i]); parallel.addGroup(layout.createSequentialGroup(). addComponent(labels[i]).addComponent(fields[i])); sequential.addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE). addComponent(labels[i]).addComponent(fields[i])); layout.linkSize(SwingConstants.HORIZONTAL, labels[i], labels[0]); } return panel; } public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { final JPanel panel = new DynamicGroupLayout().create(); JScrollPane jsp = new JScrollPane(panel) { @Override public Dimension getPreferredSize() { return new Dimension(320, 240); } }; JOptionPane.showMessageDialog(null, jsp, "Data", JOptionPane.PLAIN_MESSAGE); } }); } }