JLabel如何在JPanel上自定义坐标点?

nj_yangting 2008-03-11 01:55:01
test.setLocation(50, 50);
这东西好像没用?
是我用法不对还是什么?
...全文
559 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
horizonlyhw 2008-03-11
  • 打赏
  • 举报
回复
把lauout設置為null
然后把組建,比如JLabel jl = new JLabel(); jl.setBounds(new Rectangle(int,int,int,int));就可以了~~
最后 別忘了在 容器里添加add(jl,null);
nj_yangting 2008-03-11
  • 打赏
  • 举报
回复
谢谢 我也刚查到用setBounds();
结帖发分了
dracularking 2008-03-11
  • 打赏
  • 举报
回复
主要是少了setBounds

import javax.swing.JApplet;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Test extends JApplet {

private static final long serialVersionUID = 1L;

private JLabel test = null;

private JPanel panel = null;

public void init() {
if (panel == null)
panel = new JPanel();
panel.setLayout(null);
test = new JLabel("Test");
test.setBounds(10, 10, 100, 100);
this.getContentPane().add(panel);
panel.add(test);
this.setSize(300, 300);
this.setVisible(true);
test.setLocation(200, 200);
}

}
nj_yangting 2008-03-11
  • 打赏
  • 举报
回复
public void init(){
if(panel==null)
panel = new JPanel();
// panel.setLayout(null);
// this.setLayout(null);
test = new JLabel("Test");
panel.add(test);
test.setLocation(50, 50);

panel.setPreferredSize(new Dimension(400,300));
panel.setVisible(true);

this.add(panel);

this.setPreferredSize(new Dimension(400,300));
this.setVisible(true);

}
现在把init()改成这样还是无法显示
nj_yangting 2008-03-11
  • 打赏
  • 举报
回复
楼上说的放不下是什么意思
意思是说面板比标签要小?
dracularking 2008-03-11
  • 打赏
  • 举报
回复
程序呢 不用layout放不下就有可能无法显示
nj_yangting 2008-03-11
  • 打赏
  • 举报
回复
public class ShowTest extends JApplet {

private static final long serialVersionUID = 1L;
private JLabel test = null;
private JPanel panel = null;

public void init(){
if(panel==null)
panel = new JPanel();
panel.setLayout(null);
test = new JLabel("Test");
panel.add(test);
test.setLocation(50, 50);
this.add(panel);
}

}
以上是我学习用的源码,很简单.
什么地方错了,只要我把panel.setLayout(null);给注解了 就能显示TEST了?怪
nj_yangting 2008-03-11
  • 打赏
  • 举报
回复
很怪阿.我用了空布局后,所有的JLabel全看不到了.但我打印全都的label的位置是正确的.如下

java.awt.Point[x=0,y=0]
java.awt.Point[x=10,y=10]
java.awt.Point[x=20,y=20]
java.awt.Point[x=30,y=30]
java.awt.Point[x=40,y=40]

很怪阿.
nj_dobetter 2008-03-11
  • 打赏
  • 举报
回复
jpanel.setLayout(null);
jpanel.add(jlabel);
jlabel.setLocation(50,50);

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧