根据以下代码介绍一下实现的界面 public void createButton(Container C) { //设置显示文字 btnReset = new JButton("重置本关"); btnBack = new JButton("撤回一步"); btnNext = new JButton("跳过本关"); btnPrev = new JButton("回溯一关"); btnLook = new JButton("保存当前进度"); btnSelect = new JButton("选择关卡"); btnMusic = new JButton("关闭音乐"); cbMusic = new JComboBox(sMusic); //设置按钮监听 btnBack.addActionListener(this); btnMusic.addActionListener(this); btnNext.addActionListener(this); btnPrev.addActionListener(this); btnBack.addActionListener(this); btnLook.addActionListener(this); btnReset.addActionListener(this); btnSelect.addActionListener(this); //设置绝对位置 btnReset.setBounds(10, 660, 95, 30); btnMusic.setBounds(110, 660, 95, 30); btnSelect.setBounds(210, 660, 95, 30); btnBack.setBounds(310, 660, 95, 30); btnPrev.setBounds(410, 660, 95, 30); btnNext.setBounds(510, 660, 95, 30); btnLook.setBounds(610, 660, 160, 30); btnReset.setBackground(new Color(159, 100, 6)); btnMusic.setBackground(new Color(159, 100, 6)); btnSelect.setBackground(new Color(159, 100, 6)); btnBack.setBackground(new Color(159, 100, 6)); btnPrev.setBackground(new Color(159, 100, 6)); btnNext.setBackground(new Color(159, 100, 6)); btnLook.setBackground(new Color(159, 100, 6)); cbMusic.addItemListener(this); C.add(btnReset); C.add(btnMusic); C.add(btnSelect); C.add(btnLook); C.add(btnPrev); C.add(btnNext); C.add(btnBack); JLabel lblMusic = new JLabel("选择音乐"); lblMusic.setBounds(610, 700, 160, 30); JLabel lblText1 = new JLabel("在游戏中,你是一只名为史莱姆的生物"); lblText1.setForeground(new Color(0, 0, 0)); lblText1.setBounds(10, 700, 460, 30); C.add(lblText1); JLabel lblText2 = new JLabel("请使用键盘方向键控制史莱姆移动从而推动箱子"); lblText2.setForeground(new Color(0, 0, 0)); lblText2.setBounds(10, 730, 460, 30); C.add(lblText2); C.add(lblMusic); cbMusic.setBounds(610, 730, 160, 30); C.add(cbMusic); }
时间: 2024-04-08 15:31:32 浏览: 26
这段代码实现了一个界面,其中包含了多个按钮和标签。这些按钮有不同的功能,比如重置本关、撤回一步、跳过本关等。按钮的位置是通过设置绝对位置来确定的。同时,还有一个下拉列表框,用于选择音乐。除了按钮和下拉列表框,还有一些用于显示文本的标签。
在代码中,通过创建按钮对象,并使用`setBounds`方法设置按钮的位置和大小。然后,为每个按钮添加监听器,以便在用户点击按钮时执行相应的操作。最后,将按钮和标签添加到容器中。
此外,还设置了按钮和标签的背景颜色和文本颜色,并添加了一个下拉列表框的项目监听器。
总结起来,这段代码实现了一个包含多个按钮和标签的界面,为用户提供了一些操作选项,并通过监听器来响应用户的操作。
相关问题
java制作一个登录界面,一个按钮实现提交的功能,另一个按钮实现重置
好的,下面是一个简单的Java登录界面的代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class LoginFrame extends JFrame {
private JTextField tfUsername;
private JPasswordField tfPassword;
public LoginFrame() {
super("登录");
// 创建用户名和密码的文本框
tfUsername = new JTextField(20);
tfPassword = new JPasswordField(20);
// 创建登录和重置按钮
JButton btnLogin = new JButton("登录");
JButton btnReset = new JButton("重置");
// 为登录按钮添加事件监听器
btnLogin.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String username = tfUsername.getText();
String password = new String(tfPassword.getPassword());
if ("admin".equals(username) && "123456".equals(password)) {
JOptionPane.showMessageDialog(LoginFrame.this, "登录成功");
} else {
JOptionPane.showMessageDialog(LoginFrame.this, "用户名或密码错误");
}
}
});
// 为重置按钮添加事件监听器
btnReset.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
tfUsername.setText("");
tfPassword.setText("");
}
});
// 创建面板,并添加组件
JPanel panel = new JPanel(new GridLayout(3, 2));
panel.add(new JLabel("用户名:"));
panel.add(tfUsername);
panel.add(new JLabel("密码:"));
panel.add(tfPassword);
panel.add(btnLogin);
panel.add(btnReset);
// 将面板添加到窗口中
add(panel);
// 设置窗口大小和位置
setSize(300, 150);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new LoginFrame().setVisible(true);
}
}
```
这个程序创建了一个名为`LoginFrame`的`JFrame`窗口,其中包含一个用户名文本框、一个密码文本框、一个登录按钮和一个重置按钮。点击登录按钮时,程序会检查输入的用户名和密码是否正确,如果正确,则弹出一个对话框提示登录成功;如果不正确,则弹出一个对话框提示用户名或密码错误。点击重置按钮时,程序会清空用户名和密码文本框的内容。
需要注意的是,在这个程序中,我们使用了匿名内部类来为登录按钮和重置按钮添加事件监听器。这样可以使程序更加简洁。
图形化插件,编写Register类和MainFrame类,其界面学号 姓名密码 注册 密码(确认)性别 专业 男 y 计算机科学与技术 我已阅读并同意注册规则 注册 重置java代码
以下是使用 Java Swing 实现的 Register 和 MainFrame 类的示例代码,其中包含了你提到的所有控件和布局:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Register extends JFrame implements ActionListener {
private JLabel labelNumber, labelName, labelPassword, labelConfirmPassword, labelGender, labelMajor;
private JTextField tfNumber, tfName;
private JPasswordField pfPassword, pfConfirmPassword;
private JRadioButton rbMale, rbFemale;
private ButtonGroup bgGender;
private JComboBox<String> cbMajor;
private JCheckBox cbAgree;
private JButton btnRegister, btnReset;
public Register() {
super("注册");
// 创建控件
labelNumber = new JLabel("学号:");
labelName = new JLabel("姓名:");
labelPassword = new JLabel("密码:");
labelConfirmPassword = new JLabel("确认密码:");
labelGender = new JLabel("性别:");
labelMajor = new JLabel("专业:");
tfNumber = new JTextField(10);
tfName = new JTextField(10);
pfPassword = new JPasswordField(10);
pfConfirmPassword = new JPasswordField(10);
rbMale = new JRadioButton("男", true);
rbFemale = new JRadioButton("女", false);
bgGender = new ButtonGroup();
bgGender.add(rbMale);
bgGender.add(rbFemale);
cbMajor = new JComboBox<>(new String[]{"计算机科学与技术", "软件工程", "信息安全"});
cbAgree = new JCheckBox("我已阅读并同意注册规则");
btnRegister = new JButton("注册");
btnReset = new JButton("重置");
// 布局
JPanel panel = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.gridx = 0;
c.gridy = 0;
c.anchor = GridBagConstraints.EAST;
panel.add(labelNumber, c);
c.gridy++;
panel.add(labelName, c);
c.gridy++;
panel.add(labelPassword, c);
c.gridy++;
panel.add(labelConfirmPassword, c);
c.gridy++;
panel.add(labelGender, c);
c.gridy++;
panel.add(labelMajor, c);
c.gridy++;
c.gridwidth = 2;
panel.add(cbAgree, c);
c.gridy = 0;
c.gridx++;
c.anchor = GridBagConstraints.WEST;
panel.add(tfNumber, c);
c.gridy++;
panel.add(tfName, c);
c.gridy++;
panel.add(pfPassword, c);
c.gridy++;
panel.add(pfConfirmPassword, c);
c.gridy++;
JPanel panelGender = new JPanel();
panelGender.add(rbMale);
panelGender.add(rbFemale);
panel.add(panelGender, c);
c.gridy++;
panel.add(cbMajor, c);
c.gridy++;
c.gridwidth = 1;
c.anchor = GridBagConstraints.CENTER;
panel.add(btnRegister, c);
c.gridx++;
panel.add(btnReset, c);
add(panel);
// 绑定事件
btnRegister.addActionListener(this);
btnReset.addActionListener(this);
// 设置窗口
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 300);
setLocationRelativeTo(null);
setResizable(false);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnRegister) {
// 注册逻辑
} else if (e.getSource() == btnReset) {
// 重置表单
tfNumber.setText("");
tfName.setText("");
pfPassword.setText("");
pfConfirmPassword.setText("");
rbMale.setSelected(true);
cbMajor.setSelectedIndex(0);
cbAgree.setSelected(false);
}
}
}
public class MainFrame extends JFrame implements ActionListener {
private JLabel labelWelcome;
private JButton btnRegister;
public MainFrame() {
super("主界面");
// 创建控件
labelWelcome = new JLabel("欢迎使用");
btnRegister = new JButton("注册");
// 布局
JPanel panel = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.gridx = 0;
c.gridy = 0;
c.insets = new Insets(20, 0, 0, 0);
panel.add(labelWelcome, c);
c.gridy++;
panel.add(btnRegister, c);
add(panel);
// 绑定事件
btnRegister.addActionListener(this);
// 设置窗口
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 300);
setLocationRelativeTo(null);
setResizable(false);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnRegister) {
// 打开注册界面
Register register = new Register();
register.setVisible(true);
}
}
public static void main(String[] args) {
MainFrame mainFrame = new MainFrame();
}
}
```
这个示例代码中,Register 类实现了注册界面,其中的 actionPerformed 方法可以处理注册和重置按钮的事件。MainFrame 类实现了主界面,其中的 actionPerformed 方法可以打开注册界面。你可以根据自己的需要修改控件和布局。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)