3、Swing(AWT的子类)

3.1窗口、面板

public class myJFrame extends JFrame {
//JFrame是一个顶级窗口
public myJFrame() {
setBounds(100, 100, 400, 400);
setVisible(true);
//swing关闭窗口的方法
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
}
//JFrame是Frame的子类
class Demo01JFrame extends myJFrame{
//JFrame是一个顶级窗口
public Demo01JFrame(){ //组件都是在容器中设置
//获得容器
Container container = this.getContentPane(); //JFrame也属于一个容器,需要将容器实例化
container.setBackground(new Color(172, 26, 9));
container.setLayout(null); //添加面板
JPanel jP = new JPanel();
jP.setBackground(new Color(1,50,1));
jP.setBounds(100,100,200,200); add(jP);
}
} //有一定的偏移,因为将顶部高度也算在其中了

3.2弹窗

class Demo02Frame extends myJFrame{
public Demo02Frame(){
//容器
Container contentPane = this.getContentPane();
//绝对布局
contentPane.setLayout(null);
Button btn1 = new Button("btn1");
btn1.setBounds(100,100,70,30);
btn1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent actionEvent) {
new myJDialog();
}
});
contentPane.add(btn1);
}
} //弹窗属性和frame类似
class myJDialog extends JDialog {
public myJDialog() {
setVisible(true);
setBounds(500,500,300,300);
this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); //任何组件都需要放到容器当中,否则无效
Container container = this.getContentPane();
//container.setLayout(new FlowLayout(FlowLayout.CENTER)); Label label = new Label("成功弹出弹窗");
//如果显示中文只能设置为MS Song字体,否则的话就会显示方框状的乱码
label.setFont(new Font("MS Song", Font.PLAIN, 9));
container.add(label);
}
}

3.3 imageIcon

public class IconJFrame extends myJFrame {
public IconJFrame(){
setSize(1000,1000); //图片在标签上显示
JLabel jlabel = new JLabel();
URL url = IconJFrame.class.getResource("tp.png");//直接获取同级目录下的图片地址
ImageIcon imageIcon = new ImageIcon(url);
//设置图片
jlabel.setIcon(imageIcon);
add(jlabel);
setVisible(true);
}
public static void main(String[] args) {
new IconJFrame();
}
}

3.4 JScrollPane 滚动条面板

public class JScrollDemo extends myJFrame{
public JScrollDemo(){
//获取容器
Container container = this.getContentPane(); //创建文本域
JTextArea jtArea = new JTextArea(50,50);
jtArea.setText("hello"); //创建一个滚动条面板
JScrollPane scrollPane = new JScrollPane(jtArea);//添加了文本域
scrollPane.setBounds(100,100,200,100); container.add(scrollPane);
setVisible(true);
} public static void main(String[] args) {
new JScrollDemo();
}
}

Swing常用容器的更多相关文章

  1. swing菜单,常用组件,常用容器

    1菜单 import javax.swing.*; import java.awt.*; import java.awt.event.InputEvent; import java.awt.event ...

  2. winform常用的属性(listview),常用容器(二者结合)

    ListVies控件主要用于展示数据(非常实用和重要的控件) FullRowSelect:设置是否行选择模式.(默认为false) (开启之后一下选中一行数据) ___________________ ...

  3. C++ STL中的常用容器浅谈

    STL是C/C++开发中一个非常重要的模板,而其中定义的各种容器也是非常方便我们大家使用.下面,我们就浅谈某些常用的容器.这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点.STL中 ...

  4. SSIS从理论到实战,再到应用(3)----SSIS包的变量,约束,常用容器

    原文:SSIS从理论到实战,再到应用(3)----SSIS包的变量,约束,常用容器 上期回顾: SSIS从理论到实战,再到应用(2)----SSIS包的控制流   首先我们来看看包里面的变量 SSIS ...

  5. 深入解析C++ STL中的常用容器

    转载:http://blog.csdn.net/u013443618/article/details/49964299 这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点.STL中的 ...

  6. docker 安装与常用命令与常用容器(containers)环境

    注意区别 container 与 image 的关系,container 的建立需要 image 的承载,也即 container 依赖 image,停止并删除了 container 并不会删除 im ...

  7. 2018.4.27 Java的Swing常用事件

    Swing常用事件 1.Java Swing中处理事件的一般步骤是: (1)新建一个组件(JButton) (2)将该组件添加到面板中(JPanel) (3)注册监听器以监听事件源产生的事件(如Act ...

  8. Swing学习篇 API [一]Swing常用组件

    1.按钮(Jbutton) Swing中的按钮是Jbutton,它是javax.swing.AbstracButton类的子类,swing中的按钮可以显示图像,并且可以将按钮设置为窗口的默认图标,而且 ...

  9. Qt学习笔记常用容器

    主要说Qt的以下几种容器 1.QList<T> 2.QLinkedList<T> 3.Map<T> 和一些常用的容器方法的使用 qSort qCopy qFind ...

随机推荐

  1. Cypress 高级用法系列 一

    1. Multiple Assertions cy .get('[data-cy=task]') .then( item => { expect(item[0]).to.contain.text ...

  2. videojs文档翻译-EventTarget

    EventTarget new EventTarget()   EventTarget是一个可以与DOM EventTarget具有相同API的类. 它增加了包含冗长功能的缩写功能. 例如:on函数是 ...

  3. 电脑桌面与群晖NAS双向实时同步-20210105

      电脑桌面与群晖NAS双向实时同步 2021年1月15日星期五   一.购买群晖DS920+网络存储服务器.NEC超轻笔记本电脑(重量小于800克).小米10至尊版安卓智能手机和intel i9 1 ...

  4. ASPX页面传参中文乱码处理

    前端 function() { var msg='这是一段中文参数'; window.location.href="New.aspx?name="+escape(msg); } 后 ...

  5. 看完就会的Spring Cloud Gateway

    在前面几节,我给大家介绍了当一个系统拆分成微服务后,会产生的问题与解决方案:服务如何发现与管理(Nacos注册中心实战),服务与服务如何通信(Ribbon, Feign实战) 今天我们就来聊一聊另一个 ...

  6. 【python与机器学习实战】感知机和支持向量机学习笔记(一)

    对<Python与机器学习实战>一书阅读的记录,对于一些难以理解的地方查阅了资料辅以理解并补充和记录,重新梳理一下感知机和SVM的算法原理,加深记忆. 1.感知机 感知机的基本概念 感知机 ...

  7. 【Unity3D】Android App Bundle(aab)打包上架Google Play介绍

    总体说来,Android App Bundle打包有3种方式,每种方式都有成功上架Google Play进行测试通过,因此实用程度还是挺高的.能够理解以下内容的前提是会打apk包,知道如何生成Asse ...

  8. netty系列之:对聊天进行加密

    目录 简介 PKI标准 各类证书的后缀和转换 netty中启动SSL server netty中启动SSL client 总结 简介 在之前的文章中,我们讲到了怎么使用netty建立聊天室,但是这样的 ...

  9. FSM自动售货机 verilog 实现及 code 细节讲解

    1.题目: 饮料1.5 元, 可投入硬币1 元 0.5 元,输出饮料 零钱 2. 画出状态机. 3.仿真结果:coin=1 --> 0.5 元 coin=2-->1元 4.关键代码分析: ...

  10. 熬夜肝了一份 C++/Linux 开发学习路线

    大家好,我是帅地. 之前写过几篇学习路线的文章 前端开发学习路线 Java 后端开发学习路线 一般开发岗主流的就是 Java 后台开发,前端开发以及 C++ 后台开发,现在 Go 开发也是越来越多了, ...