88问答网
所有问题
JAVA 为什么在有时在JPanel窗口里添加图形后 运行时需要下拉下窗口(随意动下) 图形才显示出来?
如题
举报该问题
推荐答案 2014-06-09
拉下窗口Java界面上会从最外层JFrame开始,对其重新渲染,以及对children列表也重新渲染,如此递归。
你这个其实图形已经加进去了!只是,你是在GUI渲染之后,才加入进去的(你拉一下窗口,resize,触发了gui的重新渲染动作),你需要在渲染之前加入,或者你在加入图形之后repaint一下。
不过不建议上述那么做,在JPanel中加入图形,你是覆盖的paint方法么?假如是的话,那你最好是去覆盖paintComponent(Graphics g)方法,用g.drawImage去画出图形,这样才会正常。
几年没整GUI了,上面说的应该是正确的,具体是怎么回事,贴代码上来才能更好的解答~~
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://88.wendadaohang.com/zd/gg11VMaKSVaMc1ctSgK.html
其他回答
第1个回答 2018-04-10
添加了图形,然而没有触发paint,所有并没有实际绘制。
添加图形后,应该调用一次repaint()就能重绘了。
第2个回答 2020-02-11
你可以把设置窗体可见的代码放到最下边,我刚刚就和你一样的问题,现在好了。
第3个回答 2014-06-08
你没有重画页面?好像是replay()吧,具体记不清了
第4个回答 2014-06-08
图形的起始位置不在你窗口的初始位置上吧
追问
什么意思呢? 在添加图形的时候我并没有改变其坐标 如果不是添加在panel 而是添加在frame上 就不会出现这种情况
追答
恩。。有代码贴出来吗?
追问
超出字数 可以加下我QQ吗? 1165131123
相似回答
java
中
为什么在
frame中加的控件只有调整一
下窗口
大小才能显示出来?_百度...
答:
多半是因为你是在frame显示之后才把组件加上去
,当改变窗口大小的时候窗口要重绘,这时组件才显示出来 把你加组件的代码放到frame.setVisible(true);后面就行了
Java
的
JPanel(
流式布局
)添加
到JScrollPane滚动窗格后垂直滚动条不正常且...
答:
首先你的jscrollPane要这样设置:JscrollPane.getHorizontalScrollBar().setAutoscrolls(false);JscrollPane.getVerticalScrollBar().setAutoscrolls(true);这样你的滚动条就只会显示竖线。接下来是关键:将jp.setlayout(new ModifiedFlowLayout());这个布局是继承flowlayout的。也就是说将布局改为下面这个布局就可...
怎样
在java
编写的
窗口里添加
滑动条。
答:
public MainFrame() { setSize(400, 300);setDefaultCloseOperation(EXIT_ON_CLOSE);JScrollPane scrollPane_2 = new JScrollPane();getContentPane().add(scrollPane_2, BorderLayout.CENTER);JTextPane textPane = new JTextPane();textPane.setText(content);scrollPane_2.setViewportView(textPane);setVi...
java
的
jpanel
上
添加
背景
图片
后eclipse不显示背景图片,但
运行
后却看得到...
答:
p2.add(p2_lab1,"0"); p2.add(p2_lab2,"1"); this.cardp3=new CardLayout(); p3=new
JPanel(
this.cardp3); //先给P3加入一个主界面的卡片 Image zhu_image=null; try { zhu_image = ImageIO.read(new File("image/11.jpg"...
简述
java
程序设计中界面设计中的三种布局方式
答:
JPanel panel1=
(JPanel)
getContentPane();panel1.setLayout(new BorderLayout
())
;然后,我们就可以在使用容器的add方法添加部件时,附加上位置参数,使得该部件显示在指定的位置上。位置参数分别是:BorderLayout.NORTH 位置为北BorderLayout.SOUTH 位置为南BorderLayout.EAST 位置为东BorderLayout.WEST 位置为西Border...
java
如何在一个已经
运行
出来的
jpanel
界面上
添加图片
答:
第一个问题是先把添加了得
jpanel
设置成为不显示,setVisible(false),然后在重新创建一个jpanel就行了,注意要先设置第一个jpanel不显示才行。
Java
中
在JPanel
中
添加
JPanel
时
,
为什么
内部的那个JPanel中的控件不显 ...
答:
1.可能是你没有将控件添加进
JPanel
;2.你的布局不合理。
java
如何
在JPanel
中重绘
图像
答:
在JPanel
中画图要重写public void paintComponent(Graphics g){ super.paintComponent(g); ///}直接写到paintComponent里面的代码每次都会画图如果想改的话,应该在画图方法里面加一些控制代码,在其他地方改变一些变量的值,然后调用repaint();这才是正规的做法比如public class A extends JPanel{ private Color color=Col...
大家正在搜
如何在图形中添加文字
smartart图形怎么增加
ps怎么添加形状图案
JAVA画图形的阴影怎么画
cad怎么设置图形界限?
smartart图形不包括下面的
ps自定义形状工具怎么添加
JAVA图形界面设计做游戏
Java图形用户界面
相关问题
java如何在一个已经运行出来的jpanel界面上添加图片
java Graphics绘图问题 就是一张图片在JPane...
java中为什么在frame中加的控件只有调整一下窗口大小才...
java如何在JPanel中重绘图像
JAVA JPanel 面板的大小会随着放的东西大小而改变吗...
java JPanel 显示问题
java在jpanel中画图必须重写paint吗?
java的jpanel上添加背景图片后eclipse不显示背...