swing的JProgressBar进度条_BoundedRangeModel

由于Swing中很多组件的界面与数据都采用了MVC的设计思想:

M指的是: Model即数据模型、封装数据 V指的是: View即视图,用于展示数据的组件 C指的是: Controller即控制器,用于把Model中的数据交给View展示

 

使用MVC的优点:可以把我们的代码进行分类、分层。我们正在学的JProgressBar对象的内部其实内置了BoundedRangeModel模型对象,由于这个对象是JProgressBar内置的,所以JProgressBar可以直接使用BoundedRangeModel模型对象进度百分比的设置的底层就是由BoundedRangeModel完成的,其实最终还是需要BoundedRangeModel

 

Swing组件大都将外观显示和内部数据分离,JProgressBar也不例外,JProgressBar组件有一个内置的用于保存其状态数据的Model对象,这个对象由BoundedRangeModel对象表示,程序调用JProgressBar对象的方法完成进度百分比的设置,监听进度条的数据变化,其实都是通过它内置的BoundedRangeModel对象完成的。下面的代码是对之前代码的改进,通过BoundedRangeModel完成数据的设置,获取与监听

 

swing的JProgressBar进度条_BoundedRangeModel的练习

 

swing的JProgressBar进度条__ProgressMonitor

创建进度对话框 ProgressMonitor的用法与JProgressBar的用法基本相似,只是ProgressMonitor可以直接创建一个进度对话框,它提供了下面的构造器

 

完成对话框的创建:

上面那个构造方法的参数如下:

1、parentComponent:对话框的父组件(由于对话框可以独立存在,所以即使不指定父组件也没事,不传的话就写null) 2、message:对话框的描述信息 3、note:对话框的提示信息 4、min:进度条的最小值 5、max:进度条的最大值

 

使用ProgressMonitor创建的对话框里包含的进度条是非常固定的,程序甚至不能设置该进度条是否包含边框(总是包含边框),不能设置进度,不能改变进度条的方向(总是水平方向)

 

swing的JProgressBar进度条__ProgressMonitor的练习