java求一下用swing写的代码
3个回答
展开全部
帮你写好了!不懂追问!
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Login extends JPanel {
public Login(){
setLayout(null);
JPanel panel=new JPanel();
panel.setLayout(null);
panel.setBorder(BorderFactory.createTitledBorder("登陆"));
panel.setBounds(10, 10, 310, 120);
add(panel);
JLabel nameLabel=new JLabel("姓名");
nameLabel.setBounds(15, 30, 40, 25);
panel.add(nameLabel);
JTextField nameTextField=new JTextField();
nameTextField.setBounds(55,30,240,30);
panel.add(nameTextField);
JLabel pwdLabel=new JLabel("密码");
pwdLabel.setBounds(15, 70, 40, 25);
panel.add(pwdLabel);
JTextField pwdTextField=new JTextField();
pwdTextField.setBounds(55,70,240,30);
panel.add(pwdTextField);
JButton ok=new JButton("确定");
ok.setBounds(100, 170, 70,30);
add(ok);
JButton cancel=new JButton("取消");
cancel.setBounds(175, 170, 70,30);
add(cancel);
}
public static void main(String[] args) {
JPanel p=new Login();
JFrame jf=new JFrame("用户登陆");
jf.add(p);
jf.setLocation(500,100);
jf.setSize(350, 250);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
追问
你好 必须要手写放在哪个坐标上么!
追答
要想精确控制 组件的位置,就要用到setBound(x,y,w,h);方法,手动填写需要放置的位置(相对应父组件),使用setBound前必须使的布局方式为空布局,其他种类的布局方式虽然不用写坐标,但是不精确。
比如你使用 格子布局也就是
比如, 你用的是其中的一种构造方法,还有一种是带有四个参数的,
比如 jframe.setLayout(new GridLayout(2,1,5,6));
(也可以2个参数,不必要设置 列间距和行间距)
2表示2行 , 1表示1列,5是水平间距,6是垂直间距 ,把整个JFrame 分割成2行1 列,这样 上面(第一行)放一个Jpanle 下面(第二行)放一个Japnel
展开全部
import java.awt.*;
import java.swing.*;
.........
JPanel p = new JPanel();
//预先设置面板的大小
p.setPreferredSize(new Dimension(100,250));
p.setLayout(new BorderLayout());
//M2应该是放置姓名和密码的那个面板
M2.setBorder(BorderFactory.createTitledBorder("登录"));
np.add(BorderLayout.CENTER,M2);
..........
import java.swing.*;
.........
JPanel p = new JPanel();
//预先设置面板的大小
p.setPreferredSize(new Dimension(100,250));
p.setLayout(new BorderLayout());
//M2应该是放置姓名和密码的那个面板
M2.setBorder(BorderFactory.createTitledBorder("登录"));
np.add(BorderLayout.CENTER,M2);
..........
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用一个单独的JPanel容器放置着几个组件。
上下各使用一个JPanel。
上下各使用一个JPanel。
追问
两个JPanel怎么使用啊
是不是还得和楼上的一样写一个东西放在一个坐标上么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询