java里表格的拖放问题?(急急急!)
现在我有两张数据表格,其中的字段一致,现在我想从一张表格上把数据拖到另一张表格上(其中第二张数据表上没有数据记录)。我现在只有在第二张表上也有数据的时候可以实现拖放操作,如果一条记录也没有的话,拖上去的时候,鼠标还是表示着不能放的状态,请问有什么解决方案(不能追加一空白行)。希望能够给个例子。
用了JTable table = new JTable() {
public boolean getScrollableTracksViewportHeight() {
return true;
}
};
之后可以解决上面的问题,但是这样的话即使数据很多,滚动条也不会自动出现,有什么解决办法,能否给个例子。
或有其他更好的解决办法。
问题点数:20、回复次数:5Top
1 楼UnAgain()回复于 2006-06-01 20:01:28 得分 0
贴一下你的代码Top
2 楼taotb026(流浪者)回复于 2006-06-02 08:44:56 得分 0
private JScrollPane getCorrespondTablePane() {
String[][] correspondData = new String[0][6];
//表格模式
DefaultTableModelmodel = new DefaultTableModel(correspondData,
new String[]{"割当", "客先名", "据付地"}) {
public boolean isCellEditable(int row, int column) {
return false;
}
};
model.setOrderArray(correspondMap);
correspondTable = new JTable(model){
public boolean getScrollableTracksViewportHeight() {
return true;
}
};
// correspondTable.addMouseListener(this);
correspondTable.setDragEnabled(true);
correspondTable.setName("2");
correspondTable.setTransferHandler(new StringTransferHandler(this));
correspondTbPanel = new JScrollPane(correspondTable);
correspondTbPanel.setPreferredSize(new Dimension(1024, 200));
//设置表格的对齐方式,和表格列的宽度。
//SwingUitl.packColumn(correspondTable,
//ScheduleTableConstant.CORRESPOND_TABLE_LENGTH,
//ScheduleTableConstant.MARGIN);
//SwingUitl.setTableHeaderAlign(correspondTable);
return correspondTbPanel;
}Top
3 楼gtlang78()回复于 2006-06-02 09:29:53 得分 20
sorry, 上次给你的代码是有这个问题,应该改成这样
JTable table = new JTable(30, 5) {
public boolean getScrollableTracksViewportHeight() {
JViewport viewport = (JViewport) getParent();
Dimension d = getPreferredSize();
if (viewport != null && d.height > viewport.getHeight()) {
return false;
}
else {
return true;
}
}
};
Top
4 楼taotb026(流浪者)回复于 2006-06-02 09:34:52 得分 0
非常感谢。Top
5 楼UnAgain()回复于 2006-06-02 10:53:04 得分 0
markTop




