我正在尝试禁用Scrollpane上的horizontalScroolbar ..我已经尝试使用setHorizontalScrollbarVisibility()方法但它不起作用。我想让水平条消失..我也尝试使用JScrollPane但它没有显示我的表。请帮忙,我应该做些什么改变..
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
class Jtdemo extends JFrame
{
DefaultTableModel dtm;
JTextField jf=new JTextField();
JButton jb=new JButton();
String data1[]=new String[100];
//JScrollPane jsp=new JScrollPane();
JTable jt=new JTable();
//Vector v=new Vector(10);
int i;
public Jtdemo()
{
dtm = new DefaultTableModel();
jt.setModel(dtm);
jt.setForeground(Color.red);
pane.setViewportView(jt);
dtm.addColumn("hello");
//dtm.addColumn("hi");
jb.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
String nn=jf.getText();
String data[]=nn.split(",");
for(i=0;i<data.length;i++)
//v.addElement(data[i]);
//System.out.println(data[i]);
dtm.addRow(new Object[]{data[i],/*Comments/Assignment value*/});
//dtm.addRow(null);
}
});
jt.setBackground(Color.black);
ScrollPane pane = new ScrollPane();
//pane.setViewportView(jt);
setLayout(null);
pane.setBounds(10, 10, 500,500);
pane.add(jt);
jf.setBounds(10, 610, 50,25);
jb.setBounds(610, 610, 50,25);
//add(jt);
add(pane);
add(jf);
add(jb);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setExtendedState(MAXIMIZED_BOTH);
setVisible(true);
}
public static void main( String args[] )
{
// Create an instance of the test application
new Jtdemo();
}
}
答案 0 :(得分:1)
只需使用:
JScrollPane pane = new JScrollPane(jt);
pane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
而不是
pane.setViewportView(jt);
ScrollPane pane = new ScrollPane();
pane.add(jt);
观看下一个tutorial