jbutton可以设置id吗_Java Swing简单控件实例(JButton,JLabel,JMenuBar,JComboBo)
package hello;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.awt.*;
/**
* swing基础实例
* @author HZ20232
*
*/
public class Hello{
public static void main(String args[])throws Exception{
NewFrame frame1 = new NewFrame();
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//一定要设置关闭
frame1.setVisible(true);
}
}
class NewFrame extends JFrame{
private JLabel label1;
private JButton button1;
private JTextField text1;
private JComboBox box;
private JMenuBar menuBar;
private JSlider slider;
private JSpinner spinner;
private JToolBar toolBar;
public NewFrame(){
super();
this.setSize(300,500);
this.getContentPane().setLayout(null);//设置布局控制器
// this.getContentPane().setLayout(new FlowLayout());//设置布局控制器
// this.getContentPane().setLayout(new GridLayout(1,2));//设置布局控制器,需要给出设定的行列数目
// this.getContentPane().setLayout(new BorderLayout());//设置布局控制器,以North,South,West,East,来控制控件布局
// this.getContentPane().setLayout(new GridBagLayout());//设置布局控制器
this.add(this.getTextField(),null);//添加文本框
this.add(this.getButton(),null);//添加按钮
this.add(this.getLabel(),null);//添加标签
this.add(this.getBox(),null);//添加下拉列表框
this.setJMenuBar(this.getMenu());//添加菜单
this.add(this.getSlider(),null);
this.add(this.getSpinner(),null);
this.add(this.getToolBar(),null);
this.setTitle("Hello World!");//设置窗口标题
}
private JToolBar getToolBar(){
if(toolBar==null){
toolBar = new JToolBar();
toolBar.setBounds(103,260,71,20);
toolBar.setFloatable(true);
}
return toolBar;
}
private JSpinner getSpinner(){
if(spinner==null){
spinner = new JSpinner();
spinner.setBounds(103,220, 80,20);
spinner.setValue(100);
}
return spinner;
}
private JSlider getSlider(){
if(slider==null){
slider = new JSlider();
slider.setBounds(103,200,100, 20);
slider.setMaximum(100);
slider.setMinimum(0);
slider.setOrientation(0);
slider.setValue(0);
}
return slider;
}
/**
* 菜单的级别JMenuBar->JMenu->JMenuItem
* 三级都是1:n的关系
* 最后添加菜单用的SetJMenuBar方法
* @return 建立好的菜单
*/
private JMenuBar getMenu(){
if(menuBar==null){
menuBar = new JMenuBar();
JMenu m1 = new JMenu();
m1.setText("文件");
JMenu m2 = new JMenu();
m2.setText("编辑");
JMenu m3 = new JMenu();
m3.setText("帮助");
JMenuItem item11 = new JMenuItem();
item11.setText("打开");
JMenuItem item12 = new JMenuItem();
item12.setText("保存");
JMenuItem item13 = new JMenuItem();
item13.setText("退出");
JMenuItem item21 = new JMenuItem();
item21.setText("复制");
JMenuItem item22 = new JMenuItem();
item22.setText("拷贝");
JMenuItem item23 = new JMenuItem();
item23.setText("剪切");
JMenuItem item31 = new JMenuItem();
item31.setText("欢迎");
JMenuItem item32 = new JMenuItem();
item32.setText("搜索");
JMenuItem item33 = new JMenuItem();
item33.setText("版本信息");
m1.add(item11);
m1.add(item12);
m1.add(item13);
m2.add(item21);
m2.add(item22);
m2.add(item23);
m3.add(item31);
m3.add(item32);
m3.add(item33);
menuBar.add(m1);
menuBar.add(m2);
menuBar.add(m3);
}
return menuBar;
}
/**
* 设置下拉列表框
* @return
*/
private JComboBox getBox(){
if(box==null){
box = new JComboBox();
box.setBounds(103,140,71,27);
box.addItem("1");
box.addItem("2");
box.addActionListener(new comboxListener());//为下拉列表框添加监听器类
}
return box;
}
private class comboxListener implements ActionListener{
public void actionPerformed(ActionEvent e){
Object o = e.getSource();
System.out.println(o.toString());
}
}
/**
* 设置标签
* @return 设置好的标签
*/
private JLabel getLabel(){
if(label1==null){
label1 = new JLabel();
label1.setBounds(34,49,53,18);
label1.setText("Name");
label1.setToolTipText("JLabel");
}
return label1;
}
/**
* 设置按钮
* @return 设置好的按钮
*/
private JButton getButton(){
if(button1==null){
button1 = new JButton();
button1.setBounds(103,110,71,27);
button1.setText("OK");
button1.setToolTipText("OK");
button1.addActionListener(new HelloButton());//添加监听器类,其主要的响应都由监听器类的方法实现
}
return button1;
}
/**
* 监听器类实现ActionListener接口,主要实现actionPerformed方法
* @author HZ20232
*
*/
private class HelloButton implements ActionListener{
public void actionPerformed(ActionEvent e){
System.out.println("Hello world!");
}
}
/**
* 设定文本域
* @return
*/
private JTextField getTextField(){
if(text1==null){
text1 = new JTextField();
text1.setBounds(96,49,160,20);
}
return text1;
}
}
jbutton可以设置id吗_Java Swing简单控件实例(JButton,JLabel,JMenuBar,JComboBo)相关推荐
- jbutton可以设置id吗_Java JButton.setHorizontalTextPosition方法代碼示例
本文整理匯總了Java中javax.swing.JButton.setHorizontalTextPosition方法的典型用法代碼示例.如果您正苦於以下問題:Java JButton.setHori ...
- java 日历控件_java swing 日历控件怎么实现 最好是源码
展开全部 源代码: e69da5e887aa3231313335323631343130323136353331333330363864//DatePicker.java package com.kx ...
- ASP.NET Atlas简单控件介绍——Sys.Component基类与Sys.UI.Control基类
作者:Dflying Chen (http://dflying.cnblogs.com/) 本系列有三篇文章: ASP.NET Atlas简单控件介绍--Sys.Component基类与Sys.UI. ...
- Webform(简单控件、复合控件)
一.简单控件: 1.label控件 <asp:Label ID="Label1" runat="server" Text="账 号:" ...
- 2022 最新 Android 基础教程,从开发入门到项目实战【b站动脑学院】学习笔记——第三章:简单控件
第 3 章 简单控件 本章介绍了App开发常见的几类简单控件的用法,主要包括:显示文字的文本视图.容纳视图的常用布局.响应点击的按钮控件.显示图片的图像视图等.然后结合本章所学的知识,演示了一个实战项 ...
- 安卓开发学习笔记1:简单控件
此文章仅为本人在学习安卓开发时的一些笔记 界面显示逻辑处理 使用XML标记.描绘应用界面,使用Java书写程序逻辑 使用XML描述APP界面 使用XML文件描述APP界面 一个界面布局可以被多处代码复 ...
- ASP.NET Atlas简单控件介绍——InputControl,TextBox,Button和CheckBox
作者:Dflying Chen (http://dflying.cnblogs.com/) 注:本系列文章比较基础,基本为Atlas官方文档的翻译,熟悉Atlas的朋友可以跳过. 本系列有三篇文章: ...
- silverlight体验之三:简单控件堆成个Login
silverlight体验之三:简单控件堆成个Login 快过年了,回家心情急切呀.今天,明天,后天一上午.就可以回家啦,高兴,再记点小东西吧. 好像web项目都是从登陆开始的吧,这个也一样. 1. ...
- QT上设置背景图不影响子控件以及按钮控件的透明化
QT中设置背景图不影响子控件 QT中设置背景图的方法不少,我这里是直接使用stylesheet来设置背景图.如果直接在UI界面进行如下所示设置 border-image: url(:/resource ...
最新文章
- puppet最新源码包安装学习笔记
- 轨迹系列8——记某真实项目中轨迹展示查询效率优化方案一(初步设计)
- 用 Python 快速实现 HTTP 和 FTP 服务器
- linux 生成随机数命令
- Weak Pair HDU - 5877 树状数组+离散化+DFS遍历
- 日志级别动态调整——小工具解决大问题
- Mysql优化之索引优化
- mysql 比较一个字符串_比较MySQL中的两个字符串?
- Hibernate获取数据方式与缓存使用
- ionic 支持float吗_oppok7x怎么样值得买吗 oppok7x介绍
- 云平台圈地须群攻莫单打
- scala Basic 第三课
- 转:程序员这口饭-职业规划解决方案
- 如何在word中批量编辑所有图片的大小?
- SpringBoot项目深度优化和Jvm调优
- JOB DESCRIPTION
- 互动3D网站已触手可及
- Endnote 基本使用教程
- 802.1Q封装的VLAN数据帧格式
- SV 接口(interface)
热门文章
- HttpClient连接池抛出大量ConnectionPoolTimeoutException: Timeout waiting for connection异常排查
- 解决ActiveX Control异常:“没有注册类(异常来自 HRESULT:0x80040154(REGDB_E_CLASSNOTREG))“
- Bad owner or permissions on .ssh/config win10问题解决
- IDEA设置生成带注释的getter和setter解决方案 (图文教程)
- 我可以在CSS中使用onclick效果吗?
- html怎么设置顶部布局,html – CSS位置:固定没有顶部给出意想不到的布局?
- win11beta渠道升级的如何改为正式版 Windows11beta版升级正式版的步骤方法
- 统一返回码,返回结果实体类
- 非模态对话框的创建于销毁
- c语言枚举如何当函数返回值,C语言学习五 — 数组与枚举