Panel p = new Panel();
p.add(Canvas);
add(p);

解决方案 »

  1.   

    这样就可以让canvas不在最上面了吗?
      

  2.   

    我试过了,canvas的问题是搞定了,但是由于加了个panel,所以程序的下拉菜单被这个panel挡住了,哎,我已经被java这些复杂的层次关系搞得糊涂死了
      

  3.   

    呵呵,刚才的问题是搞定了,但是canvas又跑到最上面去了,真的是很麻烦啊
      

  4.   

    噢,还有,如果用JInternalFrame.add(JPanel),编译器就会抱错,因为下面的p.add(Canvas)有错误,而要用JInternalFrame.getContent().add(Canvas)
      

  5.   

    你用的是swing 的菜单吧??
    改用 awt 的菜单试试?
      

  6.   

    那swing下面没有类似canvas的类吗??
      

  7.   

    那swing下面没有类似canvas的类吗??    我没找到,应该没有
       直接用Menu
       
      

  8.   

    OK了,搞定了,谢谢hexiaofeng,你已经帮了我很多忙了。最后一个问题,是不是在一个JInternalFrame上面加多个canvas,对他们初始化的时候有可能有的canvas不会显示出来??
      

  9.   

    JInternalFrame的默认布局管理器是BorderLayout,加多个canvas看你如何加了
    或改为FlowLayout 可随意add如愿易,请将代码给我看看[email protected], ^&^ 呵呵,你愿意的话,呵呵
      

  10.   

    我现在是用JBuiler自带的(我想应该是的)XYLayout,而且每个canvas类似一个个小窗口,里面画上网格线,但是现在的问题是第一个internalframe显示没问题,但是再加新加一个internalframe,一些小窗口就会没有显示了。
      

  11.   

    再加新加一个internalframe 的 Layout选了XYLayout么???