CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  GUI 设计

java里表格的拖放问题?(急急急!)

楼主taotb026(流浪者)2006-06-01 17:37:37 在 Java / GUI 设计 提问

现在我有两张数据表格,其中的字段一致,现在我想从一张表格上把数据拖到另一张表格上(其中第二张数据表上没有数据记录)。我现在只有在第二张表上也有数据的时候可以实现拖放操作,如果一条记录也没有的话,拖上去的时候,鼠标还是表示着不能放的状态,请问有什么解决方案(不能追加一空白行)。希望能够给个例子。  
   
  用了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

相关问题

关键词

得分解答快速导航

  • 帖主:taotb026
  • gtlang78

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo