JAVA 为什么在有时在JPanel窗口里添加图形后 运行时需要下拉下窗口(随意动下) 图形才显示出来? 10

如题... 如题 展开
 我来答
抹一位0A
2014-06-09 · 超过20用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:52.4万
展开全部
拉下窗口Java界面上会从最外层JFrame开始,对其重新渲染,以及对children列表也重新渲染,如此递归。

你这个其实图形已经加进去了!只是,你是在GUI渲染之后,才加入进去的(你拉一下窗口,resize,触发了gui的重新渲染动作),你需要在渲染之前加入,或者你在加入图形之后repaint一下。

不过不建议上述那么做,在JPanel中加入图形,你是覆盖的paint方法么?假如是的话,那你最好是去覆盖paintComponent(Graphics g)方法,用g.drawImage去画出图形,这样才会正常。

几年没整GUI了,上面说的应该是正确的,具体是怎么回事,贴代码上来才能更好的解答~~
e世同人
2018-04-10 · TA获得超过830个赞
知道小有建树答主
回答量:229
采纳率:87%
帮助的人:88.6万
展开全部
添加了图形,然而没有触发paint,所有并没有实际绘制。
添加图形后,应该调用一次repaint()就能重绘了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
baiyuntian55
2020-02-11
知道答主
回答量:2
采纳率:0%
帮助的人:1238
展开全部
你可以把设置窗体可见的代码放到最下边,我刚刚就和你一样的问题,现在好了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-06-08
展开全部
你没有重画页面?好像是replay()吧,具体记不清了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6f6c16637
2014-06-08
知道答主
回答量:36
采纳率:0%
帮助的人:13.9万
展开全部
图形的起始位置不在你窗口的初始位置上吧
更多追问追答
追问
什么意思呢? 在添加图形的时候我并没有改变其坐标  如果不是添加在panel 而是添加在frame上  就不会出现这种情况
追答
恩。。有代码贴出来吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式