A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 姚伟涛 中级黑马   /  2012-4-14 12:52  /  1164 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. import java.awt.*;  
  2. import java.awt.geom.*;  
  3. public class TestPort2 {  

  4. private Frame frame = null; // @jve:decl-index=0:visual-constraint="114,42"  

  5. public TestPort2() {  
  6. getFrame().setVisible(true);  
  7. }  
  8. /**  
  9. * This method initializes frame  
  10. *  
  11. * @return java.awt.Frame  
  12. */  
  13. private Frame getFrame() {  
  14. if (frame == null) {  
  15. frame = new Frame();  
  16. frame.setSize(new Dimension(353, 199));  
  17. frame.addComponentListener(new java.awt.event.ComponentAdapter() {  
  18. public void componentResized(java.awt.event.ComponentEvent e) {  
  19. Graphics2D g2d = (Graphics2D)frame.getGraphics();  
  20. //注意下面一行代码  
  21. Line2D l = new Line2D.Double(30,0,0,25000);  
  22. g2d.draw(l);  
  23. }  
  24. });  
  25. }  
  26. return frame;  
  27. }  

  28. /**  
  29. * @param args  
  30. */  
  31. public static void main(String[] args) {  
  32. // TODO 自动生成方法存根  
  33. new TestPort2();  
  34. }  

  35. }  
复制代码
当拖动Frame时应该显示一条竖线,而这段代码不行.  
当把Line2D l = new Line2D.Double(30,0,0,25000);  
换成Line2D l = new Line2D.Double(30,0,0,2500);  
以及其它的参数就没有问题.  
我百思不得其解,为什么呢?  
请教高手!!!!!!!!!!!!!!!!!!!!

1 个回复

倒序浏览
你定义的frame宽353,长199,25000超过范围了,2500没有问题就不懂了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马