JButton指定大小和位置?

hqjma hqjma 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
首先贴出我的代码:

public class Qlogin extends JFrame{

JLabel jl; //上部
//下部
JPanel jp1;
JButton jp1_jb1,jp1_jb2,jp1_jb3;

public static void main(String args[]){
Qlogin ql = new Qlogin();
}

public Qlogin(){
//上部组件
jl = new JLabel(new ImageIcon("image/1.jpg"));

this.add(jl,"North");
this.setSize(350,250);

//下部
jp1 = new JPanel();
jp1.setLayout(null);
// jp1.setBounds(0, 200, 350, 50);
// jp1.setSize(250,100);
// jp1.setPreferredSize(new Dimension(250,100));
// pack();
jp1_jb1 = new JButton("多账号");
jp1_jb2 = new JButton("设置");
jp1_jb3 = new JButton("登录");
jp1_jb1.setBounds(0,180,80,30);
jp1_jb2.setBounds(100,180,80,30);
jp1_jb3.setBounds(250,180,80,30);
// jp1_jb1.setSize(100,50);
// jp1_jb2.setSize(100,50);
// jp1_jb1.setPreferredSize(new Dimension(150,50));
jp1.add(jp1_jb1);
jp1.add(jp1_jb2);
jp1.add(jp1_jb3);
this.getContentPane().add(jp1,"South");

//显示图标。
setIconImage(Toolkit.getDefaultToolkit().getImage("image/head.png"));

this.setDefaultCloseOperation(HIDE_ON_CLOSE);
this.setVisible(true);
}
}
我想模仿qq的登录界面,这个代码中间的部分还没写,但就遇到了几个问题。这个代码没有显示上面的3个button。
几个问题:
1.网上说要改变button的大小。要么用空布局,然后用setSize()或setBounds()改变大小;要么用setPreferredSize改变大小。但根据这个代码,我只要用空布局就不会显示button,用默认布局才会显示,但显示的button大小仍是布局管理器给定的那个大小,不是我设定的。
2.setIconImage(Toolkit.getDefaultToolkit().getImage("image/head.png"));这句显示图标不再是coffee了。但是显示出来的图片几乎看不清,太小了。有上面办法解决吗?
3.上部的图片显示占据了整个窗口,请问有没有设定图片的办法?还是用photoshop手动将图片改小?
一个这么短的代码就发现这么多问题。。。55~求高手指点。
...全文
评论 26
收藏 已收藏
分享
返回顶部
hqjma
Java SE 62,620 成员 307,251 内容