GUI
GUI与Winform的区别
WinForms(Windows Forms)是一种用户界面(UI)框架,用于在Microsoft Windows操作系统上创建图形用户界面(GUI)应用程序。GUI(图形用户界面)是用户与计算机进行交互的视觉方式,允许用户通过图形元素如按钮、文本框、菜单等与应用程序进行交互。
下面是WinForms与GUI的区别:
WinForms是一种GUI框架的具体实现,而GUI是一种用户与计算机进行交互的视觉方式。WinForms提供了一组用于创建GUI应用程序的类和控件,而GUI是涵盖了各种不同的实现方式,如WinForms、WPF(Windows Presentation Foundation)等。
WinForms是针对Windows操作系统的GUI框架,而GUI并不局限于特定的操作系统。GUI可以在不同的平台和操作系统上实现,如Linux、macOS等。
WinForms基于传统的窗体和控件的模型,提供了一种基于事件驱动的编程方式。开发者可以通过在特定事件上编写代码来响应用户的操作。而GUI可以采用不同的编程模型,如基于组件的开发模式、模型-视图-控制器(MVC)模式等。
在功能和可定制性方面,WinForms相对较为简单,主要适用于相对简单的界面设计和交互需求。而GUI则更加灵活,可以实现更复杂和个性化的界面功能,例如动画效果、图形绘制等。
总的来说,WinForms是一种特定平台的GUI框架,用于在Windows操作系统上创建图形用户界面应用程序;而GUI是一种更通用的概念,可以用于描述各种不同平台和操作系统上的用户界面实现方式。
一、导包
java.awt.; 重量级组件包 Button javax.swing.; 轻量级组件包 JButton
二、开发的流程和步骤
-
选择容器和组件
组件Component:图形界面上能够看到的任何事物都被称之为一个组件
容器Container:一旦一个组件当中能够添加其它的组件,这个组件被称作容器常用的容器:
JFrame JPanel
窗体框架 面板常用的组件:
JLabel JButton JTextField JPasswordField
标签 按钮 单行文本框 单行密码框 JTextArea JMenuBar JMenu JMenuItem
多行文本域 菜单条 菜单 菜单项JFrame frame JPanel panel JButton btn JLabel lab
-
初始化容器和组件
new new new … 各个容器和组件的
构造方法
public xxx(){ frame = new JFrame("xxxxx"); panel = new JPanel("xxxxx"); lab = new JLabel("xxxx"); ..... }
-
选择布局管理器
-
BorderLayout
边框布局,它是JFrame的默认布局管理器,它将容器的可视范围分割为
东西南北中
五个区域,每个区域只能添加一个组件 ,不尊重组件原始大小
,直接拉伸或者缩放占满整个区域,如果东西南北当中有未使用的区域 ,将直接被中央及其他小弟占领
-
FlowLayout
流水布局,它是JPanel的默认布局管理器,它按照
从左到右的顺序
依次摆放组件,尊重组件原始大小
不会拉伸 不会缩放,如果一行摆放不开,则自动换行并且依然居中对齐
-
GridLayout
网格布局 它不是任何容器的默认布局,它将容器可视范围分割为指定的行数列数形成网格,每个单元格只允许添加一个组件,
不尊重组件的原始大小
直接拉伸占满整个单元格,添加的顺序按照从左到右 自上而下的顺序依次添加
-
frame.setLayout(new BorderLayout() | new FlowLayout() | new GridLayout());
-
-
将组件添加进容器
- 容器.add(组件);
- 特殊的,JFrame别称.add(JPanel别称)
-
添加事件监听器
-
设置窗体属性
- 设置窗体大小
frame.setSize(800,600);
- 设置窗体是否可见
frame.setVisible(true);
- 设置窗体默认关闭操作
frame.setDefaultCloseOperation(3);
- 设置窗体大小