学习内容:

      进度条是图形界面中广浅个较大的文件时,操作系统会显示一个进度条,用于标识复制操作完成的比例:当启动Eclipse等程序时,因为需要加载较多的资源,故而启动速度较慢,程序也会在启动过程中显示一个进度条,用以表示该软件启动完成的比例......

      创建进度条

      使用JProgressBar创建进度条:

        1.创建JProgressBar对象

            public JProgressBar(int orient,int min, int max):

            orient:方向  min:最小值  max:最大值

        2.设置属性

          setBorderPainted(boolean b):设置进度条是否有边框

          setIndeterminate(boolean newNalue):设置当前进度条是不是进度不确定的进度条,如果是,则将看到一个滑块在进度条中左右移动

          setstringPainted(boolean b):设置进度条是否显示当前完成的百分比

        

        3.获取和设置当前进度条的进度状态
          setvalue(int n):设置当前进度值
          double getpercentcomplete():获取进度条的完成百分比

          string getstring():返回进度字符串的当前值

      程序调用JProgressBar对象的方法完成进度百分比的设置,监听进度条的数据变化,其实都是通过它内置的BoundedRangeModel对象完成的。(Model封装数据)  

  

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

      public ProgressMonitor(Component parentComponent ,object message ,string note,int min,int max):

        parentcomponent:对话框的父组件 message:对话框的描述信息 note:进度的提示信息 min:进度条的最小值 max:进度条的最大值

    

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

      无论从哪个角度来看,List和IComboBox都是极其相似的,它们都有一个列表框,只是IComboBox的列表框需要以下拉方式显示出来;List和IComboBox都可以通过调用setRenderer ( )方法来改变列表项的表现形式。甚至维护这两个组件的Model都是相似的,JList使用ListModel, JComboBox使用ComboBoxModel,而ComboBoxModel是ListModel的子类。   

      与JProgressBar一样,JList和)ComboBox也采用了MC的设计模式,List和IComboBox只负责外观的显示,而组件底层的状态数据则由对应的Model来维护。st对应的Model是lListModel接口,JComboBox对应的Model是ComboBox接口  

      从上面接口来看,这个ListModel 不管List里的所有列表项的存储形式,它甚至不强制存储所有的列表项,只要ListModel的实现类提供了getSize()和getElementAt()两个方法,List就可以根据该ListMode!对象来生成列表框。ComboBoxModel继承了ListModel,它添加了"选择项""的概念,选择项代表JComboBox显示区域内可见的列表项。

      如果需要创建一个可以增加、删除列表项的List 对象,则应该在创建List时显式使用DefaultListModel作为构造参数。因为DefaultListModel 作为List的Model,它负责维护儿List组件的所有列表数据,所以可以通过向DefaultListModel中添加、删除元素来实现向List对象中增加、删除列表项。

      前面程序中的JList和JComboBoX采用的都是简单的字符串列表项,实际上,JList和IComboBox还可以支持图标列表项,如果在创建List,或JComboBox时传入图标数组,则创建的JList和IComboBox的列表项就是图标。如果希望列表项是更复杂的组件,例如,希望像QQ程序那样每个列表项既有图标,又有字符串,此时需要使用ListCellRenderer接口的实现类对象,自定义每个条目组件的渲染过程

      通过JList的setcellRenderer(ListcellRenderer<? super E> cellRenderer)方法,把自定义的ListCellRenderer对象传递给JList,就可以按照自定义的规则绘制列表项组件了。

明天内容:

      Swing 树  表格

遇到问题:

      无

最新文章

  1. C++ STL算法系列2---find ,find_first_of , find_if , adjacent_find的使用
  2. spring校验和文件上传
  3. elasticsearch插件之一:bigdesk
  4. Windows Server 2012 R2 设置 smtp 服务器
  5. source code analyzer 功能强大的C/C++源代码分析软件 Celerity CRACK 破解版
  6. mount 挂载光盘
  7. deepin 2014 静态IP无法保存,临时方法
  8. {% load staticfiles %}
  9. http://www.spasvo.com/ceshi/open/kyxncsgj/Jmeter/
  10. iOS 开源库介绍
  11. 分析Linux内核5.0系统调用处理过程
  12. Python和Java编程题(六)
  13. OnSen UI结合AngularJs打造”美团&quot;APP底部导航栏 --Hybrid App
  14. 网络流Dinic算法
  15. python 异常类型----后期需理解调整
  16. python中的列表和元组
  17. 使用mysql-connector-java出现的错误
  18. BZOJ3714 [PA2014]Kuglarz 【最小生成树】
  19. vector对象
  20. java equals与==区别

热门文章

  1. GPS与AGPS定位服务
  2. axios &amp; fetch 异步请求
  3. Unmount and run xfs_repair
  4. Java 在PPT中创建散点图
  5. OpenAPITools 实践
  6. Linux curl 命令 使用总结
  7. Unity——技能系统(一)
  8. vue引入elementUI(第三方样式库)
  9. go 集合
  10. jenkins安装与配置---window,mis包直接安装