Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JScrollPane随机无法显示内容_Java_Swing_Jscrollpane - Fatal编程技术网

Java JScrollPane随机无法显示内容

Java JScrollPane随机无法显示内容,java,swing,jscrollpane,Java,Swing,Jscrollpane,我对JScrollPane有问题。它将随机选择显示或不显示。在各自的滚动窗格中有两个测试区域。值得注意的是,如果我调整JFrame的大小,它将变得可见。运行时,1框或2框可能不可见。40%的时间框2将可见,但不显示1。30%的时间框1可见,但2不可见。20%的时间两个框都可见。10%的时间两个盒子都不可见。这些都是粗略的数字,但似乎大体接近。我已经多次运行该程序,无论是否重新编译,结果都会改变,即使代码没有改变。我曾经尝试过使用布局管理器和不使用布局管理器,结果都是一样的。我想避免像“你必须使用

我对JScrollPane有问题。它将随机选择显示或不显示。在各自的滚动窗格中有两个测试区域。值得注意的是,如果我调整JFrame的大小,它将变得可见。运行时,1框或2框可能不可见。40%的时间框2将可见,但不显示1。30%的时间框1可见,但2不可见。20%的时间两个框都可见。10%的时间两个盒子都不可见。这些都是粗略的数字,但似乎大体接近。我已经多次运行该程序,无论是否重新编译,结果都会改变,即使代码没有改变。我曾经尝试过使用布局管理器和不使用布局管理器,结果都是一样的。我想避免像“你必须使用布局管理器,否则小精灵会割破你的眼睛”这样的评论。我在末尾有一个“frame.repaint();”。下面是代码摘录

JTextArea area1 = new JTextArea(  );
area1.setFont(new Font("Serif", Font.BOLD, 18));
area1.setText("1");
area1.setVisible( true );
JScrollPane scroll1;
scroll1 = new JScrollPane(area1);
scroll1.setLocation( 1, 1 );
scroll1.setSize( (frame.getSize().width / 2) - 2 , frame.getSize().height - 40 );
area1.repaint();
scroll1.revalidate();
scroll1.repaint();
scroll1.getViewport().setScrollMode(JViewport.SIMPLE_SCROLL_MODE);
scroll1.setVisible( true );
frame.add(scroll1);
我尝试了太多,记不起来,我从网上找到的东西。如果我使用“JScrollPane scroll1=new JScrollPane(区域1);”,结果是相同的。如果我使用“scroll1.add(area1);”而不将其添加到构造函数中,它将永远不会显示滚动窗格的内容。我还尝试将其设置为visible false添加它,然后使其可见,结果是相同的。在这一点上,我不知道为什么会发生这种情况,更重要的是,运行之间的结果会有所不同。你知道他们怎么说精神错乱

有人知道如何解决这个问题吗? 这是其中一次跑步的照片


Put
frame.setVisible(true)在代码末尾,在
帧之后。添加(滚动1)
。这对我来说总是有效的。

Put
frame.setVisible(true)在代码末尾,在
帧之后。添加(滚动1)
。这对我来说总是很有用。

试着把
frame.setVisible(true)放进去在代码末尾,在
帧之后。添加(滚动1)
。总是对我有用。?使用
null
布局可能性?考虑提供一个说明你的问题的方法。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱,提高效率responses@MadProgrammer我可以这样做,我有一个JAR文件,我将上传。不,我更喜欢一个我可以复制粘贴到我的IDE中并播放的JAR文件with@TheCoffeeKid这是可行的,有点奇怪,但我只运行了10次左右,没有更多的错误。你能把它当作一个答案,这样我就可以给你评分了吗?试着把
frame.setVisible(true)放进去在代码末尾,在
帧之后。添加(滚动1)
。总是对我有用。?使用
null
布局可能性?考虑提供一个说明你的问题的方法。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱,提高效率responses@MadProgrammer我可以这样做,我有一个JAR文件,我将上传。不,我更喜欢一个我可以复制粘贴到我的IDE中并播放的JAR文件with@TheCoffeeKid这是可行的,有点奇怪,但我只运行了10次左右,没有更多的错误。你能不能把它当作一个答案,这样我就可以相信你了?这个解决方案有效,我以前从来没有这样做过,但现在它确实起作用了。这个解决方案有效,我以前从来没有这样做过,但现在它起作用了。