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. 第五篇 -- git基础教程

    git(权威指南)基础教程第一章 git -- gitbash -- cygwin git service:gitolite 两个的目录不同 gitbash ~ windows/home/admini ...

  2. js学习笔记之正则

    () 是为了提取匹配的字符串.表达式中有几个()就有几个相应的匹配字符串.(\s*)表示连续空格的字符串.[]是定义匹配的字符范围.比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字 ...

  3. joomla 3.7.0 (CVE-2017-8917) SQL注入漏洞

    影响版本: 3.7.0 poc http://192.168.49.2:8080/index.php?option=com_fields&view=fields&layout=moda ...

  4. bootstrap table记录一下

    $(function() { // 刷新 talbe function refresh() { $("#table").bootstrapTable('refresh'); } $ ...

  5. 用QT写的简单Todo记事本-附源码(浮动窗口)

    去年边学边写了搞了很久, 已经好久没继续开发了, 先放出来供大家参考吧. 发现自己的学习能力还是不错的. 技术点: 使用QT, QML技术 代码参考: https://github.com/cnscu ...

  6. 为ScrollView增加圆角的三种方式,及自定义属性【在Linearlayout中新增ScrollView支持滚动 后续】

    获取圆角的几种方案如下:方案一:通过shape来实现,给scrollView增加背景来实现方案二:通过自定义ScrollView,还要自定义属性,在dispatchDraw中不停的裁剪方案三:用And ...

  7. 官宣 .NET MAUI 预览版 6

    最近,我们发布了.NET 多平台应用程序UI (MAUI)的最新进展. 在此版本中,我们全力支持Visual Studio 2022 预览版2.这也标志着我们首次将.NET MAUI 作为工作负载安装 ...

  8. 学习Android Jetpack? 入门教程和进阶实战这里全都有!

    前言 2018年谷歌I/O,Jetpack横空出世,官方介绍如下: Jetpack 是一套库.工具和指南,可帮助开发者更轻松地编写优质应用.这些组件可帮助您遵循最佳做法.让您摆脱编写样板代码的工作并简 ...

  9. Linux 基础学习篇 序篇

    读序篇可以知道的: 1.有些指令知道前和知道后,自己的操作是完全不同的,可能知道前,会用reset把系统重新启动一遍,而知道后会使用ps和kill来关闭进程. 2.如果对Linus的学习知识" ...

  10. 【ShardingSphere技术专题】「ShardingJDBC」SpringBoot之整合ShardingJDBC实现分库分表(JavaConfig方式)

    前提介绍 ShardingSphere介绍 ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC.Sharding-Proxy和Shardin ...