Java图形用户界面
这是你的程序逻辑问题。你在构造方法里构建了另外一个JFrame的对象——既然继承了JFrame类,就不必另外构造JFrame类的对象。只需要对当前对象进行操作,设置标题的话:
setTitle(“用户登录”);
//实际上构造方法里第一句隐藏了super();语句,如果要显示调用,那么直接把title放到这句话里——super(“用户登录”);就不用调用setTitle方法了。
后面的三条语句:
MyFrame.add(L1);
MyFrame.add(L2);
MyFrame.add(L3);
MyFrame全部删掉,或者改为this 。
没有标签出现是因为你没有把MyFrame显示出来。(显示的是this对象,而非MyFrame对象)
Java编写图形用户界面程序
运行如图
参考代码如下
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class RegDemo extends JFrame implements ActionListener{
JTextField jtf;
JPasswordField jpf;
public RegDemo() {
//组件的创建, 和布局安排
JPanel jpc = new JPanel();//默认流式布局
JPanel jp1 = new JPanel(new GridLayout(2, 2,5,10));//网格布局
jp1.setBorder(BorderFactory.createTitledBorder(“用户注册”));
JLabel jl1 = new JLabel(“用户名:”);
jtf = new JTextField(10);
JLabel jl2 = new JLabel(“密码:”);
jpf = new JPasswordField(10);
jpf.setEchoChar(‘*’);//用*号来隐藏密码的显示
jp1.add(jl1);jp1.add(jtf);
jp1.add(jl2);jp1.add(jpf);
jpc.add(jp1);
add(jpc);
JButton jb1 = new JButton(“提交”);
jb1.addActionListener(this);
jb1.setActionCommand(“yes”);
JButton jb2 = new JButton(“取消”);
jb2.addActionListener(this);
jb2.setActionCommand(“no”);
JPanel jp2 = new JPanel();
jp2.add(jb1);jp2.add(jb2);
add(jp2,BorderLayout.SOUTH);
setTitle(“用户注册界面”);
setSize(280, 280);
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//
setVisible(true);
}
public static void main(String[] args) {
new RegDemo();
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals(“yes”)){
String name = jtf.getText().trim();
String pwd = new String(jpf.getPassword());
if(name.equals(“”)||pwd.equals(“”)){
JOptionPane.showMessageDialog(this, “你还没有输入用户名或者密码”);
}else{
JOptionPane.showMessageDialog(this, “注册成功!用户名”+name+”,密码”+pwd);
}
}else{
jtf.setText(“”);
jpf.setText(“”);
}
}
}
在java中,设计图形用户界面需要经历哪几个基本步骤
1, 分析业务需求, 理顺业务逻辑
2, 根据业务需要考虑使用何种容器(JFrame ,Frame ,JWindow..) 需要的数量.
3, 每个容器(窗口)使用组件
4.组件使用何种布局方式(边界布局,绝对布局,网格布局..),排列在容器(窗口)中
5.组件中需要响应那些事件, 把事件响应代码写好,然后绑定到组件上(addListener…)
6.调试,测试
Java编写一个图形界面
我觉得还是我的好些。。。
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.FileOutputStream;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class TestSwing extends JFrame{
private JLabel label1, label2, label3, label4,label5,label6,label7;
private JPanel panel,panel1,panel2;
private JTextField tField1,tField2,tField3,tField4,tField5,tField6,tField7,tField8,tField9;
private JButton button;
private String filepath=”c:\\info.dat”;
public TestSwing(){
init();
this.setSize(300, 280);
this.setLocation(
(Toolkit.getDefaultToolkit().getScreenSize().width – this
.getSize().width) / 2,
(Toolkit.getDefaultToolkit().getScreenSize().height – this
.getSize().height) / 2);
this.setResizable(false);
this.setVisible(true);
this.setTitle(“info”);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void init(){
initPanel();
initLabel();
initTextField();
initButton();
initContent();
}
private void initContent(){
panel1.add(label1);
panel1.add(tField1);
panel1.add(label2);
panel1.add(tField2);
panel1.add(label3);
panel1.add(tField3);
panel1.add(label4);
panel1.add(tField4);
panel1.add(label5);
panel1.add(tField5);
panel1.add(label6);
panel1.add(tField6);
panel1.add(label7);
panel1.add(tField7);
panel1.add(tField8);
panel1.add(tField9);
panel2.add(button);
panel.add(panel1,BorderLayout.CENTER);
panel.add(panel2,BorderLayout.SOUTH);
getContentPane().add(panel);
}
private void initPanel(){
panel = new JPanel();
panel.setLayout(new FlowLayout());
panel.setBackground(Color.WHITE);
panel1 = new JPanel();
GridLayout upLayout = new GridLayout(8, 2);
panel1.setLayout(upLayout);
panel2 = new JPanel();
panel2.setLayout(new FlowLayout());
}
private void initLabel(){
label1 = new JLabel(“IP地址”, SwingConstants.LEFT);
label2 = new JLabel(“端口”, SwingConstants.LEFT);
label3 = new JLabel(“访问地址”, SwingConstants.LEFT);
label4 = new JLabel(“XXXXX”, SwingConstants.LEFT);
label5 = new JLabel(“XXXXX”, SwingConstants.LEFT);
label6 = new JLabel(“XXXXX”, SwingConstants.LEFT);
label7 = new JLabel(“XXXXX”, SwingConstants.LEFT);
}
private void initTextField(){
tField1 = new JTextField(10);
tField2 = new JTextField(10);
tField3 = new JTextField(10);
tField4 = new JTextField(10);
tField5 = new JTextField(10);
tField6 = new JTextField(10);
tField7 = new JTextField(10);
tField8 = new JTextField(10);
tField9 = new JTextField(10);
}
private void initButton(){
button = new JButton(“完成”);
button.addMouseListener(new MouseAdapter(){
//左键点击
public void mouseClicked(MouseEvent e) {
String ipv = tField1.getText().trim();
String portv = tField2.getText().trim();
String addrv = tField3.getText().trim();
String xx1v = tField4.getText().trim();
String xx2v = tField5.getText().trim();
String xx3v = tField6.getText().trim();
String xx4v = tField7.getText().trim();
String inputx = tField8.getText().trim();
String inputxv = tField9.getText().trim();
createFile(ipv, portv, addrv, xx1v, xx2v, xx3v, xx4v, inputx, inputxv);
JOptionPane.showMessageDialog(null, “保存成功”);
tField1.setText(“”);
tField2.setText(“”);
tField3.setText(“”);
tField4.setText(“”);
tField5.setText(“”);
tField6.setText(“”);
tField7.setText(“”);
tField8.setText(“”);
tField9.setText(“”);
}
});
}
public static void main(String[]args){
new TestSwing();
}
private void createFile(String ipv,String portv ,String addrv,String xx1v,String xx2v,String xx3v,String xx4v,String inputx,String inputxv){
StringBuffer context = new StringBuffer();
context.append(“ip=”).append(ipv).append(“\n”);
context.append(“port=”).append(portv).append(“\n”);
context.append(“addr=”).append(addrv).append(“\n”);
context.append(“xx1=”).append(xx1v).append(“\n”);
context.append(“xx2=”).append(xx2v).append(“\n”);
context.append(“xx3=”).append(xx3v).append(“\n”);
context.append(“xx4=”).append(xx4v).append(“\n”);
context.append(inputx).append(“=”).append(inputxv).append(“”);
FileOutputStream fos = null;
try {
fos = new FileOutputStream(filepath);
fos.write(context.toString().getBytes());
} catch (Exception e) {
} finally {
if (fos != null)
try {
fos.close();
} catch (Exception e) {
}
}
}
}
java设计一个图形用户界面。
//用户界面基本内容都包含,界面不是很美观
//创建一个form表单 method就是你是以什么方式提交的
form action=”demo01.html” method=”get”
用户名:input type=”text” name=”input1″ id=”id1″ / br /
密码 : input type=”password” name=”input2″ / br /
性别: input type=”radio” name=”sex” value=”nv” / 女
input type=”radio” name=”sex” value=”nan” checked=”checked”/男 br /
爱好: input type=”checkbox” name=”hobby1″ value=”lol” / LOL
input type=”checkbox” name=”hobby2″ value=”lq” / 篮球
input type=”checkbox” name=”3″ value=”zq” / 足球
input type=”checkbox” name=”hobby4″ value=”code” / 写代码 br /
!–input type=”button” name=”btn” value=”按钮”/–
地址: select name=”address”
option黑龙江/option
option吉林/option
option selected=”selected”辽宁/option
/select
input type=”hidden” name=”hidden” value=”cardpassword” /br /
上传头像:input type=”file” name=”upload” / br /
!–input type=”submit” value=”提交” /–
备注:textarea class=”” rows=”20px” cols=”30px”/textarea br /
input type=”image” src=”img.jpg” /
input type=”reset” id=”ID” value=”重置” /
/form
java 图形用户界面
public void actionPerfoemed(ActionEvent e)
拼错了
应该是public void actionPerformed(ActionEvent e) {