(初学)GUI(一、理论部分)

1、GUI的介绍

       早期,电脑向用户提供的是单调、枯燥、纯字符状态的“命令行界面(CLI)”。就是到现在,我们还可以依稀看到他们的身影:在Windows中开个DOS窗口,就可看到历史的足迹。后来,Apple公司率先在电脑的操作系统中实现了图形化的用户界面(Graphical UserInterface,简称GUI)。
       后来,Microfsoft公司推出了风靡全球的Windows操作系统,它凭借着优秀的图形化用户界面,一举奠定了操作系统标准的地位。这也造就了世界首富——比尔盖茨和IT业的泰山北斗微软公司。
       在这图形用户界面风行于世的今天,一个应用软件没有良好的GUI是无法让用户接受的。而Java语言也深知这一点的重要性,它提供了一套可以轻松构建GUI的工具。

       在这之前,先了解一下C/S和B/S。
C/S:Client/Server,基于网络协议,TCP,UDP,是长连接。
B/S:Browser/Server 基于网络协议HTTP,是短连接。

2、Java提供了三个主要包做GUI开发。

1、java.awt包:主要提供字体/布局管理器。
2、java.swing包[商业开发常用]:主要提供各种组件(窗口/按钮/文本框)。
3、java.awt.event包:事件处理,后台功能的实现。

2.1、Swing组件:

(1)顶层容器:常用有JFrame,JDialog
(2)中间容器:JPanel,JOptionPane,JScrollPane,JLayeredPane等,主要以Panel结尾。
(3)基本组件:JLabel,JButton,JTextField,JPasswordField,JRadioButton等。

2.1.1、顶层容器介绍

JFrame:一个普通的窗口(绝大多数Swing图形界面程序使用JFrame作为顶层容器)
JDialog:对话框

2.1.2、中间容器介绍

JPanel(相当于div):一般轻量级面板容器组件(作为JFrame中间容器)
JScrollPane:带滚动条的,可以水平和垂直滚动的面板组件。
JSplitPane:分隔面板。
JTabbedPane:选项卡面板。
JLayeredPane:层级面板。

2.1.3、基本组件

JLabel:标签
JButton:按钮
JRadioButton:单选按钮
JCheckBox:复选框
JToggleButton:开关按钮
JTextField:文本框
JPasswordField:密码框
JTextArea:文本区域
JComboBox:下拉列表框
JList:列表
JProgressBar:进度条
JSlider:滑块

3、API介绍

3.1、JFrame组件

JFrame frame=new JFrame(“HelloWorldSwing”);//创建及设置窗口
frame.setDefaultLookAndFeelDecorated(true);//确定一个漂亮的外观风格
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置默认的关闭窗口
frame.pack();//显示窗口
frame.setVisible(true);//这个最好放在最后,不然会出现试图看不到的情况
frame.setBounds(600,300,500,400);//设置窗口的x,y位置,窗口大小x,y
frame.add(panel);//添加panel面板到容器
frmlpa.getContentPanel().add(panel,BorderLayout.NORTH);//添加面板到主窗口,布局在背面
frmlpa.getContentPanel().add(scrollPane,BorderLayout.CENTER);//添加可滚动面板到主窗口,布局在中间

3.2Panel组件

Jpanel:
       Jpanel:
       JPanel panel=new JPanel();//创建面板容器
       panel.add(button);//添加按钮到面板

JOptionPane:
       JOptionPane.showMessageDialog(panel3,没有选中任何文件,“提示”,JOptionPane.WARNING_MESSAGE);//弹出提示框到panel容器

JScrollPane:
       JScrollPane.srollPane=new JScrollPane();//创建可滚动面板
       scrollPane.setViewportView(textArea);//设置面板内容

3.3功能组件

JLabel:
       JLabel label=new JLabel(“Hello World”);//添加标签

JButton:
       JButton button=new JButton(“选择文件”);//创建按钮
button.addActionListener(new ActionListener(){}//添加操作按钮后的时间监听器

JFileChooser:
       jfc.setFileSeclectionMode(JFileChooser.FILES_AND_DIRECTORIES);//设置文件对话框
       jfc.showSaveDialog(frmlpa);//显示打开的文件对话框

JTextArea:
       JTextArea textArea=new JTextArea();//创建文本区域
       textArea.setText(content);//设置内容

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值