首页 > 编程语言 >Java学习之路--GUI编程05

Java学习之路--GUI编程05

时间:2023-09-20 18:33:25浏览次数:51  
标签:Java 05 -- add container 按钮 new public

package com.gui.lesson05;

import javax.swing.*;
import java.awt.*;
import java.net.URL;

//2023.3.24 GUI编程--Swing--JButton按钮学习
public class JButtonDemo01 extends JFrame {
public JButtonDemo01() {
Container container = this.getContentPane();//Container c=this.getContentPane();----初始化一个容器
//下两行 1 2 将一个图片变成一个图标
URL resource = JButtonDemo01.class.getResource("cat1.jpg");//获得()里的资源 1
ImageIcon imageIcon = new ImageIcon(resource);//2

//把图标放在按钮上
JButton button = new JButton();//创建一个按钮对象
button.setIcon(imageIcon);//将图标添加到按钮上
button.setToolTipText("图片按钮");//设置按钮的标题提示为图片按钮--即鼠标点击按钮时候会出现()里的提示内容

//add
container.add(button);//将按钮添加到容器中

this.setVisible(true);//设置可见性
this.setSize(500,500);//设置大小宽和高
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//Swing 中 JFrame默认关闭窗口的事件setDefaultCloseOperation
}

public static void main(String[] args) {
//启动程序
new JButtonDemo01();
}
}
//
package com.gui.lesson05;

import javax.swing.*;
import java.awt.*;
import java.net.URL;

//2023.3.24--GUI编程--Swing下按钮的学习之单选框按钮(radioButton)
public class JButtonDemo02 extends JFrame{
public JButtonDemo02() {
Container container = this.getContentPane();//Container c=this.getContentPane();----初始化一个容器
//下两行 1 2 将一个图片变成一个图标
URL resource = JButtonDemo02.class.getResource("cat1.jpg");//获得()里的资源 1
ImageIcon imageIcon = new ImageIcon(resource);//2

//单选框按钮(radioButton)
JRadioButton radioButton1 = new JRadioButton("JRadioButton01");//将3个单选框按钮添加到容器中,单选框按钮的名字为()里设置的内容
JRadioButton radioButton2 = new JRadioButton("JRadioButton02");
JRadioButton radioButton3 = new JRadioButton("JRadioButton03");

//由于单选框只能选择一个,所以我们给他进行分组(Group),一个组只能选择一个,如果这里不设置组的话,程序跑起来就是三个按钮都可以选了
ButtonGroup group = new ButtonGroup();//创建组对象
group.add(radioButton1);//将3个单选框按钮添加到组中
group.add(radioButton2);
group.add(radioButton3);

container.add(radioButton1,BorderLayout.CENTER);//将单选框按钮添加到容器中,采用东西南北中布局将第一个按钮放中间
container.add(radioButton2,BorderLayout.NORTH);//将按钮添加到容器中,采用东西南北中布局将第一个按钮放北边
container.add(radioButton3,BorderLayout.SOUTH);//将按钮添加到容器中,采用东西南北中布局将第一个按钮放南边

this.setVisible(true);//设置可见性
this.setSize(500,300);//设置大小宽和高
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//Swing 中 JFrame默认关闭窗口的事件setDefaultCloseOperation
}

public static void main(String[] args) {
//启动程序
new JButtonDemo02();
}
}
//
package com.gui.lesson05;

import javax.swing.*;
import java.awt.*;
import java.net.URL;

//2023.3.24--GUI编程--Swing下按钮的学习之复(多)选框按钮(checkBox)
public class JButtonDemo03 extends JFrame{
public JButtonDemo03() {
Container container = this.getContentPane();//Container c=this.getContentPane();----初始化一个容器
//下两行 1 2 将一个图片变成一个图标
URL resource = JButtonDemo02.class.getResource("cat1.jpg");//获得()里的资源 1
ImageIcon imageIcon = new ImageIcon(resource);//2

//多选框
JCheckBox checkBox1 = new JCheckBox("checkBox1");//创建多选框按钮对象,多选框的名称为()里设置的内容
JCheckBox checkBox2 = new JCheckBox("checkBox2");

//将多选框放进容器里面
container.add(checkBox1,BorderLayout.NORTH);//将多选框按钮添加到容器中,采用东西南北中布局将第一个按钮放北边 这里布局自己选,选流式布局(FlowLayout)的话按钮就是在一行里
container.add(checkBox2,BorderLayout.SOUTH);//将多选框按钮添加到容器中,采用东西南北中布局将第二个按钮放南边

this.setVisible(true);//设置可见性
this.setSize(500,300);//设置大小宽和高
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//Swing 中 JFrame默认关闭窗口的事件setDefaultCloseOperation
}

public static void main(String[] args) {
//启动程序
new JButtonDemo03();
}
}
//
package com.gui.lesson05;

import javax.swing.*;
import java.awt.*;

//2023.3.23 GUI编程--Swing下的面板JPanel(面板)的学习
public class JPanelDemo extends JFrame {

public JPanelDemo() {
Container container = this.getContentPane();

container.setLayout(new GridLayout(2,1,10,10));//设置布局-表格布局2行1列,hgap和Vgap这两个参数是间距的意思

JPanel panel1 = new JPanel(new GridLayout(1, 3));//创建面板 --表格布局-1行3列
JPanel panel2 = new JPanel(new GridLayout(2, 1));//创建面板 --表格布局-2行1列
JPanel panel3 = new JPanel(new GridLayout(3, 2));//创建面板 --表格布局-3行3列

panel1.add(new JButton("1"));//向面板里添加按钮,按钮名称为“ 1”,panel1第一个面板
panel1.add(new JButton("1"));//------------panel1.第二个面板
panel1.add(new JButton("1"));//panel1第3个面板
panel2.add(new JButton("2"));//向面板里添加按钮,按钮名称为“ 2”
panel2.add(new JButton("2"));
panel3.add(new JButton("3"));//向面板里添加按钮,按钮名称为“ 3”,3行2列的表格总共有6个格子,所以要添加6个
panel3.add(new JButton("3"));
panel3.add(new JButton("3"));
panel3.add(new JButton("3"));
panel3.add(new JButton("3"));
panel3.add(new JButton("3"));

container.add(panel1);//将面板加入到容器中
container.add(panel2);
container.add(panel3);

this.setVisible(true);//设置可见性
this.setSize(1000,1000);//设置窗口大小
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//默认的关闭窗口事件setDefaultCloseOperation--Swing JFrame默认关闭窗口的
}

public static void main(String[] args) {
//启动
new JPanelDemo();
}
}
//
package com.gui.lesson05;

import javax.swing.*;
import java.awt.*;

//2023.3.21 GUI编程--文本域 JScrollPane(滚动条面板)(属于面板Panel的一种)的学习
//程序编译后,文本域里可以自由输入文字,但是文本域大小是由我们设定的,到边界就输不进去了,编译生成的窗口自由拉伸,窗口拉很大,内容很少时候,滚动条看不见,窗口拉小点,就可以看到滚动条了
public class JScrollPanelDemo extends JFrame {
//构造器
public JScrollPanelDemo(){
Container container = this.getContentPane();//Container c=this.getContentPane();----初始化一个容器

//文本域
JTextArea textArea = new JTextArea(20, 20);//()里写的是文本域的大小,宽和高
textArea.setText("每天都要做好自己哦!");//()里写的是文本域里的内容

//Scroll面板
JScrollPane scrollPane = new JScrollPane(textArea);//Scroll面板
container.add(scrollPane);//将面板添加到容器中

this.setVisible(true);//设置可见性
this.setBounds(100,100,300,350);//设置窗口的位置和大小
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//默认的关闭窗口事件setDefaultCloseOperation--Swing JFrame默认关闭窗口的
}

public static void main(String[] args) {
//启动
new JScrollPanelDemo();
}
}


标签:Java,05,--,add,container,按钮,new,public
From: https://www.cnblogs.com/CaiDingChao/p/17718054.html

相关文章

  • 谷歌优化里的cache: 搜索运算符
    cache: 运算符是可用于查找网页的缓存版本的搜索运算符。Google会生成缓存版本,以便在网站无法访问的情况下,用户仍可访问网页。cache: 运算符只能用于网页搜索。虽然Google缓存的目标受众群体是Google搜索用户,但它对网站创建者和开发者了解Google在将网页编入索引时看到的......
  • 谷歌优化里的图片搜索运算符
    与网页搜索类似,Google图片也支持专用的搜索运算符,即 src: 和 imagesize:。这些运算符仅适用于Google图片;它们对其他Google产品和服务不起作用。src: 搜索运算符src: 搜索运算符将返回在 src 属性中引用了运算符中提供的图片网址的网页。例如:src:https://example.com/me......
  • IDEA想要导入servletjar包却找不到
    在创建项目的时候,把web、tomcat都配置好后,在类中想要extendsHttpServlet却爆红找不到import的包 先打开file-->projectstructure-->Libraries 找到tomcat,lib下的servlet-api即可 ......
  • Linux用户和组命令
    用户和组配置文件1.用户:Linux基于用户身份对资源进行控制用户账号root用户程序用户:不需要登录系统,服务于应用程序,维护系统的运行普通用户:可以登录系统的一般用户组账号基本组(私有组):当用户创建文件和文件夹时,默认的属组,只能有一个附加组(公共组):用户可以有多个附加组UID和GIDUI......
  • 谷歌防止网站和平台存在用户生成的垃圾内容
    垃圾内容发布者通常会利用开放评论表单和其他用户生成的内容敏感未设防的网站,在网站上生成垃圾内容。托管平台可能同样面临滥用风险;垃圾内容发布者可能会创建大量不遵循网络垃圾政策的网站,并且生成对网络价值不大或毫无价值的内容。防止平台或网站上出现滥用行为通常并非易事。简单......
  • 华为海思雄起 | 百能云芯
    华为先前无预警推出「Mate60Pro」智能手机,以5G手机悄悄突围美国制裁,引起市场震撼,今日市场再传出,华为旗下子公司海思半导体正在出货自研国产监控镜头芯片,其中一些客户是中国公司,海思的回归将撼动市场,种种进展表明,华为正努力克服美国的出口管制。海思半导体一直是华为设备的主要芯......
  • Python基础分享之面向对象的进一步拓展
    我们熟悉了对象和类的基本概念。我们将进一步拓展,以便能实际运用对象和类。调用类的其它信息上一讲中提到,在定义方法时,必须有self这一参数。这个参数表示某个对象。对象拥有类的所有性质,那么我们可以通过self,调用类属性。classHuman(object):laugh='hahahaha'defsho......
  • 《同构JavaScript应用开发》电子书PDF+源代码
    本书将向你展示如何构建和维护属于自己的同构JavaScript应用。全书分为三部分,第一部分描绘不同种类的同构JavaScript的轮廓,第二部分介绍关键概念,第三部分提供业界同行的解决方案案例。通过阅读本书,你将了解到这种应用架构日益流行的原因,并将其运用于解决关键的业务问题,如页面加载速......
  • WorkPlus打造智慧企业移动门户,开启高效办公新时代
    在移动互联网时代,企业对于高效办公和便捷访问的需求不断增长。WorkPlus作为领先的品牌,致力于打造智慧企业移动门户,帮助企业实现高效协作与便捷访问。本文将重点介绍WorkPlus如何通过创新解决方案,为企业提供定制化的智慧移动门户,提升工作效率和用户体验。一、智慧企业移动门户的重要......
  • 《Python深度学习》高清高质量PDF电子书+源码
    Keras之父,TensorFlow机器学习框架贡献者详尽介绍了用Python和Keras进行深度学习的探索实践,包括计算机视觉、自然语言处理、产生式模型等应用。书中包含30多个代码示例,步骤讲解详细透彻。由于本书立足于人工智能的可达性和大众化,读者无须具备机器学习相关背景知识即可展开阅读。在学......