首页 > 其他分享 >窗体设置,按钮跳转页面窗体

窗体设置,按钮跳转页面窗体

时间:2023-12-25 12:35:37浏览次数:27  
标签:setBounds container 50 add 窗体 跳转 new JLabel 页面

package frame;

import javax.swing.*;

import java.awt.*;

public class Jframedemo extends JFrame {

   JFrame jFrame = new JFrame();

   Container container;

   void way1() {

       jFrame.setSize(1000, 1000);

       jFrame.setVisible(false);

       jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

       container = jFrame.getContentPane();

       container.setLayout(null);

   }

   void way2() {

       JMenuBar menubar;

       JMenu menu1;

       JMenu menu2;

       JLabel nameL;

       JLabel ageL;

       JLabel highL;

       JLabel weightL;

       JLabel homeL;

       JLabel schoolL;

       JLabel deptL;

       JTextField nameF;

       JTextField ageF;

       JTextField highF;

       JTextField weightF;

       JTextField homeF;

       JComboBox<String> comboBox_1;

       JScrollPane gd;

       Font font = new Font("宋体", Font.PLAIN, 25);

//设置菜单栏

       menubar = new JMenuBar();

       menu1 = new JMenu("文件(F)");

       menu2 = new JMenu("编辑(E)");

       menubar.add(menu1);

       menubar.add(menu2);

       container.add(menubar);

       menubar.setBounds(0, 0, 1000, 40);

//姓名身高年龄体重标签与文本框

       //姓名

       nameL = new JLabel("姓名  ");

       nameL.setBounds(20, 50, 80, 50);

       nameL.setFont(font);

       nameF = new JTextField();

       nameF.setBounds(90, 60, 300, 30);

       container.add(nameF);

       container.add(nameL);

       //年龄

       ageL = new JLabel("年龄  ");

       ageL.setBounds(450, 50, 80, 50);

       ageL.setFont(font);

       ageF = new JTextField();

       ageF.setBounds(520, 60, 300, 30);

       container.add(ageF);

       container.add(ageL);

       //身高

       highL = new JLabel("身高  ");

       highL.setBounds(20, 150, 80, 50);

       highL.setFont(font);

       highF = new JTextField();

       highF.setBounds(90, 160, 300, 30);

       container.add(highF);

       container.add(highL);

       //体重

       weightL = new JLabel("体重  ");

       weightL.setBounds(450, 150, 80, 50);

       weightL.setFont(font);

       weightF = new JTextField();

       weightF.setBounds(520, 160, 300, 30);

       container.add(weightL);

       container.add(weightF);

       //家庭住址

       homeL = new JLabel("家庭住址");

       homeL.setBounds(0, 250, 120, 50);

       homeL.setFont(font);

       homeF = new JTextField();

       homeF.setBounds(110, 260, 300, 30);

       container.add(homeL);

       container.add(homeF);

//选择学校

       schoolL = new JLabel("请选择大学");

       comboBox_1 = new JComboBox<>();

       String items_1[] = {"郑州大学", "郑州西亚斯", "师范"};

       // 下行不加<String>会因版本问题报错

       ComboBoxModel<String> cm_1 = new DefaultComboBoxModel<>(items_1);

       comboBox_1.setModel(cm_1);

       comboBox_1.setFont(font);

       schoolL.setBounds(0, 350, 200, 50);// 下拉框的坐标、尺寸。绝对布局

       schoolL.setFont(font);

       comboBox_1.setBounds(150, 360, 150, 30);

       container.add(schoolL);

       container.add(comboBox_1);

//选择系别

       String[] xl = {"计算机科学与技术", "大专", "本科", "硕士", "博士"};

       deptL = new JLabel("选择系别");

       deptL.setBounds(0, 450, 200, 50);

       deptL.setFont(font);

       gd = new JScrollPane(new JList(xl));

       gd.setFont(font);

       gd.setBounds(150, 460, 150, 30);

       container.add(gd);

       container.add(deptL);

       //按钮

       JButton jButton1 = new JButton("注册");

       JButton jButton2 = new JButton("取消");

       jButton1.setBounds(300, 560, 80, 60);

       jButton2.setBounds(400, 560, 80, 60);

       container.add(jButton1);

       container.add(jButton2);

   }

   void way3() {

       JFrame jFrame1 = new JFrame();

       jFrame1.setSize(1000, 500);

      jFrame1.setVisible(true);

    jFrame1.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

       container = jFrame1.getContentPane();

       container.setLayout(null);

       Font font = new Font("宋体", Font.PLAIN, 25);

       //姓名

       JLabel nameL = new JLabel("username  ");

       nameL.setBounds(50, 50, 150, 50);

       nameL.setFont(font);

       JTextField nameF = new JTextField();

       nameF.setBounds(190, 60, 200, 30);

       container.add(nameF);

       container.add(nameL);

       JLabel ageL = new JLabel("password  ");

       ageL.setBounds(500, 50, 150, 50);

       ageL.setFont(font);

       JPasswordField ageF = new JPasswordField();

       ageF.setBounds(620, 60, 200, 30);

       container.add(ageF);

       container.add(ageL);

       JRadioButton teacher = new JRadioButton("教师");

       JRadioButton student = new JRadioButton("学生");

       JRadioButton admin = new JRadioButton("管理员");

       //add the JRadioButtons to the ButtonGroup

       ButtonGroup buttonGroup = new ButtonGroup();

       buttonGroup.add(teacher);

       buttonGroup.add(student);

       buttonGroup.add(admin);

       //add the JRadioButtons to the contentPane ,and set the Layout

       container.add(teacher);

       container.add(student);

       container.add(admin);

       teacher.setBounds(150, 100, 80, 30);

       student.setBounds(300, 100, 80, 30);

       admin.setBounds(450, 100, 80, 30);

       JButton jButton = new JButton("确定");

       jButton.setBounds(300, 200, 80, 50);

       container.add(jButton);

       jButton.addActionListener(e -> {

           System.out.println("pass");

           if (nameF.getText().equals("1234") && ageF.getText().equals("admin")&&student.isSelected()) {

                  jFrame.setVisible(true);

           }

       });

   }

   public static void main(String[] args) {

       Jframedemo jframedemo = new Jframedemo();

       jframedemo.way3();

       jframedemo.way1();

       jframedemo.way2();

   }

}

标签:setBounds,container,50,add,窗体,跳转,new,JLabel,页面
From: https://blog.51cto.com/u_13529088/8965602

相关文章

  • delphi 窗体设计器选项(显示非可视组件、自动创建窗体)
    窗体设计器选项(显示非可视组件、自动创建窗体)选项介绍窗体设计器的首选项。Tools>Options>UserInterface>FormDesignerGridoptionsDisplaygrid在设计器上显示点网格点,以帮助对齐控件。Usedesignerguidelines启用设计器上的指引。指引有助于对齐窗体上的组件。......
  • 微信小程序循环展示数据,选中将参数传递至js,由js传递至另外一个页面
    关键词:微信小程序、页面切换、参数传递、页面切换时的参数传递。1、页面1的wxml:循环展示数据,并选中,将参数传递至js<blockwx:for="{{caselist}}"wx:for-item="item"style="display:flex;"><viewclass="item"><buttoncatchtap="casedetai......
  • 【UniApp】-uni-app-项目实战页面布局(苹果计算器)
    前言经过前面的文章介绍,基本上UniApp的内容就介绍完毕了那么从本文开始,我们就开始进行一个项目的实战这次做的项目是苹果计算器,这个项目的难度不是很大,但是也不是很简单,适合练手创建项目打开HBuilderX,点击左上角文件->新建->项目:搭建基本布局项目创建完毕之......
  • keycloak~从login-status-iframe页面总结如何跨域传值
    login-status-iframe.html是keycloak为我们提供的一种检测用户登录状态的页面,它要求用户对接的系统通过iframe进行嵌入,然后通过window.addEventListener去订阅子页面的信息。提示:所有HTMLDOM事件,可以查看我们完整的https://www.runoob.com/jsref/dom-obj-event.html。addE......
  • 使用Docker和Nginx部署单页面应用
    使用Docker和Nginx部署单页面应用一、简介1.背景Docker是一个容器引擎,它使用Linux内核功能(如命名空间和控制组)在操作系统之上创建容器DockerCompose是一个命令行工具,可以简化容器镜像的构建以及容器的运行,将命令行的选项翻译成配置文件Nginx是一个高性能的HTTP和反向代理......
  • 解决Electron中WebView加载部分HTTPS页面白屏的方法
    Electron是一个开源的桌面应用程序框架,它允许使用Web技术构建跨平台的桌面应用。在Electron应用中,WebView是一个常用的组件,用于嵌套加载Web内容。然而,有时候在加载使用HTTPS协议的页面时,可能会因为证书问题导致白屏现象。问题描述:当WebView尝试加载某些HTTPS页面时,如果页面的......
  • 小程序url跳转参数丢失
    小程序url跳转参数丢失使用encodeURIComponent进行编码然后用decodeURIComponent解码//发送toShopInfo(e){ leturlData=JSON.stringify(e.currentTarget.dataset.info); wx.navigateTo({ url:"/pages/shopInfo/shopInfo?info="+encodeURIComponent(url......
  • 使用代码生成工具快速开发应用-结合后端Web API提供接口和前端页面快速生成,实现通用的
    在前面随笔《在Winform应用中增加通用的业务编码规则生成》,我介绍了基于Winform和WPF的一个通用的业务编码规则的管理功能,本篇随笔介绍基于后端WebAPI接口,实现快速的Vue3+ElementPlus前端界面的开发整合,同样是基于代码生成工具实现快速的前端代码的生成处理。1、通用的业务编码......
  • 动态给div赋值高,使页面高度100%
    import{ref,onMounted,onUnmounted,computed,nextTick}from'vue'constboxRef=ref()constsearchBoxRef=ref()consttableBoxHeight=ref(0)constcomputedTableBoxHeight=()=>{constsearchBoxHeight=searchBoxRef.value.clientHe......
  • vue3 + xlsx 实现 excel 导入web页面解析成json数据
    vue3+xlsx实现excel导入web页面并解析成json数据fileIipt动态创建的标签,一定要用户点击事件触发,不然文件选择框的弹出会被拦截,无法弹出。意思就是下面这段关键代码要用一个事件区触发执行,不能主动执行(比如:vue的钩子)import*asXLSXfrom'xlsx'//v:"^0.18.5"letfil......