求java做个文本框。通过继承JFrame的方式创建框架类MyFrame和框架对象mf
(1)通过继承JFrame的方式创建框架类MyFrame和框架对象mf。(2)创建三个标签(其中一个为图片标签)、两个文本框、一个密码框、两个按钮(文字图片按钮)的登录服...
(1)通过继承JFrame的方式创建框架类MyFrame和框架对象mf。
(2)创建三个标签(其中一个为图片标签)、两个文本框、一个密码框、两个按钮(文字图片按钮)的登录服务器界面(如图)
(3)合理设置框架的大小等属性,将组件添加到框架上。
(4)通过MyFrame类的构造方法完成框架的创建。
文本框要个背景图片。还请附带详细过程。
文本框要个背景图片。还请附带详细过程。
文本框要个背景图片。还请附带详细过程。
要运行结果的截图,并上传输出文档 展开
(2)创建三个标签(其中一个为图片标签)、两个文本框、一个密码框、两个按钮(文字图片按钮)的登录服务器界面(如图)
(3)合理设置框架的大小等属性,将组件添加到框架上。
(4)通过MyFrame类的构造方法完成框架的创建。
文本框要个背景图片。还请附带详细过程。
文本框要个背景图片。还请附带详细过程。
文本框要个背景图片。还请附带详细过程。
要运行结果的截图,并上传输出文档 展开
展开全部
基于swing来做,很简单,换背景可以设置几个LookAndFeel共选择,需要详细的代码加Q343272874
代码附上
import java.awt.Color;
import java.awt.Component;
import java.awt.FlowLayout;
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class MyFrame extends JFrame{
private static final long serialVersionUID = -2122161377842820073L;
public MyFrame(){
super("登录");
initComponents();
}
/**
* 初始化组件
*/
public void initComponents(){
JPanel panel = new JPanel();
//设置一个线边框,颜色为绿色
panel.setBorder(BorderFactory.createLineBorder(Color.green));
//设置panel的布局管理器为BoxLayout
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
JLabel label = new JLabel("服务器地址:");
panel.add(creatUnitPanel(label, new JTextField(10), new JLabel()));//第一个单元面板由于只有两个组件,所以用一个空的标签代替第三个组件
label = new JLabel("登 录 帐 号:");
panel.add(creatUnitPanel(label, new JTextField(10),new JButton("登录")));
label = new JLabel("登 录 密 码:");
panel.add(creatUnitPanel(label, new JPasswordField(10),new JButton("退出")));
panel.setOpaque(false);//设置panel为透明,这样不会遮住背景
ImageIcon background = new ImageIcon("D:\\1.jpg");// 背景图片
JLabel imageLabel = new JLabel(background);// 把背景图片显示在一个标签里面
// 把标签的大小位置设置为图片刚好填充整个面板
imageLabel.setBounds(0, 0, background.getIconWidth(),
background.getIconHeight());
// 把内容窗格转化为JPanel,否则不能用方法setOpaque()来使内容窗格透明
JPanel imagePanel = (JPanel) this.getContentPane();
imagePanel.setOpaque(false);
// 内容窗格默认的布局管理器为BorderLayout
imagePanel.setLayout(new FlowLayout());
imagePanel.add(panel);
this.getLayeredPane().setLayout(null);
// 把背景图片添加到分层窗格的最底层作为背景
this.getLayeredPane().add(imageLabel, new Integer(Integer.MIN_VALUE));
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置主窗口大小为图片大小
this.setSize(background.getIconWidth(), background.getIconHeight());
this.setResizable(false);
this.setVisible(true);
}
/**
* 创建单元面板
* @param comp1 组件1
* @param comp2 组件2
* @param comp3 组件3
* @return
*/
private JPanel creatUnitPanel(Component comp1, Component comp2,Component comp3){
JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 10, 10));
panel.setOpaque(false);//设置为透明,这样才不会遮住背景
panel.add(comp1);
panel.add(comp2);
panel.add(comp3);
return panel;
}
public static void main(String[] argv){
new MyFrame();
}
}
代码附上
import java.awt.Color;
import java.awt.Component;
import java.awt.FlowLayout;
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class MyFrame extends JFrame{
private static final long serialVersionUID = -2122161377842820073L;
public MyFrame(){
super("登录");
initComponents();
}
/**
* 初始化组件
*/
public void initComponents(){
JPanel panel = new JPanel();
//设置一个线边框,颜色为绿色
panel.setBorder(BorderFactory.createLineBorder(Color.green));
//设置panel的布局管理器为BoxLayout
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
JLabel label = new JLabel("服务器地址:");
panel.add(creatUnitPanel(label, new JTextField(10), new JLabel()));//第一个单元面板由于只有两个组件,所以用一个空的标签代替第三个组件
label = new JLabel("登 录 帐 号:");
panel.add(creatUnitPanel(label, new JTextField(10),new JButton("登录")));
label = new JLabel("登 录 密 码:");
panel.add(creatUnitPanel(label, new JPasswordField(10),new JButton("退出")));
panel.setOpaque(false);//设置panel为透明,这样不会遮住背景
ImageIcon background = new ImageIcon("D:\\1.jpg");// 背景图片
JLabel imageLabel = new JLabel(background);// 把背景图片显示在一个标签里面
// 把标签的大小位置设置为图片刚好填充整个面板
imageLabel.setBounds(0, 0, background.getIconWidth(),
background.getIconHeight());
// 把内容窗格转化为JPanel,否则不能用方法setOpaque()来使内容窗格透明
JPanel imagePanel = (JPanel) this.getContentPane();
imagePanel.setOpaque(false);
// 内容窗格默认的布局管理器为BorderLayout
imagePanel.setLayout(new FlowLayout());
imagePanel.add(panel);
this.getLayeredPane().setLayout(null);
// 把背景图片添加到分层窗格的最底层作为背景
this.getLayeredPane().add(imageLabel, new Integer(Integer.MIN_VALUE));
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置主窗口大小为图片大小
this.setSize(background.getIconWidth(), background.getIconHeight());
this.setResizable(false);
this.setVisible(true);
}
/**
* 创建单元面板
* @param comp1 组件1
* @param comp2 组件2
* @param comp3 组件3
* @return
*/
private JPanel creatUnitPanel(Component comp1, Component comp2,Component comp3){
JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 10, 10));
panel.setOpaque(false);//设置为透明,这样才不会遮住背景
panel.add(comp1);
panel.add(comp2);
panel.add(comp3);
return panel;
}
public static void main(String[] argv){
new MyFrame();
}
}
展开全部
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class MyFrame extends JFrame{
public MyFrame(){
setBounds(300,200,300,400);
setVisible(true);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setTitle("登录窗体");
Container c=getContentPane();
GridLayout g=new GridLayout();
BorderLayout b=new BorderLayout();
FlowLayout f=new FlowLayout();
Panel p1=new Panel(g);
Panel p2=new Panel(f);
c.setLayout(b);
JLabel label01=new JLabel("服务器地址");
final JTextArea ja1=new JTextArea();
JLabel label02=new JLabel("登陆账号");
final JTextArea ja2=new JTextArea();
JLabel label03=new JLabel("登陆密码");
final JPasswordField jw=new JPasswordField();
JButton button1=new JButton("登陆");
JButton button2=new JButton("退出");
c.add(p1,BorderLayout.CENTER);
c.add(p2,BorderLayout.SOUTH);
p1.add(label01);
p1.add(ja1);
p1.add(label02);
p1.add(ja2);
p1.add(label03);
p1.add(jw);
p2.add(button1);
p2.add(button2);
}
public static void main(String[] args) {
new MyFrame();
}
}
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class MyFrame extends JFrame{
public MyFrame(){
setBounds(300,200,300,400);
setVisible(true);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setTitle("登录窗体");
Container c=getContentPane();
GridLayout g=new GridLayout();
BorderLayout b=new BorderLayout();
FlowLayout f=new FlowLayout();
Panel p1=new Panel(g);
Panel p2=new Panel(f);
c.setLayout(b);
JLabel label01=new JLabel("服务器地址");
final JTextArea ja1=new JTextArea();
JLabel label02=new JLabel("登陆账号");
final JTextArea ja2=new JTextArea();
JLabel label03=new JLabel("登陆密码");
final JPasswordField jw=new JPasswordField();
JButton button1=new JButton("登陆");
JButton button2=new JButton("退出");
c.add(p1,BorderLayout.CENTER);
c.add(p2,BorderLayout.SOUTH);
p1.add(label01);
p1.add(ja1);
p1.add(label02);
p1.add(ja2);
p1.add(label03);
p1.add(jw);
p2.add(button1);
p2.add(button2);
}
public static void main(String[] args) {
new MyFrame();
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询