/ / Добавяне на две Jtables към JScrollPane - java, swing, jtable, jscrollpane

Добавяне на две Jtables към JScrollPane - java, swing, jtable, jscrollpane

как мога да добавя две JTable страни в страна в JScrollPane използване setViewPortView () опция и да зададете размера на таблиците по отношение на размера, определен за JscrollPane

Отговори:

8 за отговор № 1

Както е показано тук и тук, нека всяка маса да заема свой прозорец за превъртане. Нека един от прозорците винаги да показва лентата за превъртане, а другата - така. После нека двата скролбара да имат обща BoundedRangeModel.


3 за отговор № 2

JScrollPane може да съдържа само една JComponent, но можете да обвиете масите си JPanel и го добавете JScrollPane както следва:

import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;


public class TestFrame extends JFrame{

public TestFrame(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
init();
pack();
setVisible(true);
}

private void init() {
JTable t1 = new JTable(10,5);
JTable t2 = new JTable(15,5);
JPanel p = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.anchor = GridBagConstraints.NORTHWEST;
c.insets =  new Insets(0,5,0,5);
c.gridy=0;
c.gridx=0;
p.add(t1.getTableHeader(),c);
c.gridx=1;
p.add(t2.getTableHeader(),c);
c.gridx=0;
c.gridy=1;
p.add(t1,c);
c.gridx=1;
p.add(t2,c);
add(new JScrollPane(p));
}


public static void main(String... strings) {
new TestFrame();
}

}

въведете описанието на изображението тук


2 за отговор № 3

как мога да добавя две JTable странично в JScrollPane използване setViewPortView () опция и задайте размера на таблиците с уважение до размера, определен за JscrollPane

  • JScrollPane е предназначен да гнезди само едно JComponent