本篇要登场的有三个控件,分别是滚轴控件、进度条控件和编辑控件。

一、滚轴控件 Ext.slider

1.滚轴控件的定义

下面我们定义三个具有代表意义滚轴控件,分别展示滚轴横向、纵向,以及单值、多值选择的特性:

[html]

    <h1>滚轴控件</h1><div class="content"><h2>横向,初始值50</h2><div id="slider1"></div><h2>纵向,带提示</h2><div id="slider2"></div><h2>多值,自定义提示</h2><div id="slider3"></div></div>

[Js]

    //横向,初始值50var slider1 = Ext.create('Ext.slider.Single', {renderTo: 'slider1',width: 214,minValue: 0,maxValue: 100,value: 50});//纵向,带提示new Ext.create('Ext.slider.Single', {renderTo: 'slider2',height: 150,minValue: 0,maxValue: 20,vertical: true,plugins: new Ext.slider.Tip()});//多值,自定义提示var slider3 = Ext.create('Ext.slider.Multi', {renderTo: 'slider3',width: 214,minValue: 0,maxValue: 20,values: [5, 12],plugins: new Ext.slider.Tip({getText: function (thumb) {return Ext.String.format('当前:<b>{0}/20</b>', thumb.value);}})});

2.获取、设置滚轴控件的值

[html]

    <h1>操作滚轴控件</h1><div class="content"><button id="button1">设置滚轴1的值为10</button><button id="button2">获取滚轴1的值</button><button id="button3">设置滚轴3的值为10,15</button><button id="button4">获取滚轴3的值集合</button></div>

[Js]

    //设置滚轴1的值为10Ext.fly("button1").on('click', function () {slider1.setValue(10);});//获取滚轴1的值Ext.fly("button2").on('click', function () {Ext.MessageBox.alert("获取值", "滚轴1的值:" + slider1.getValue());});//设置滚轴3的值为10,15Ext.fly("button3").on('click', function () {slider3.setValue(0, 10);slider3.setValue(1, 15);});//获取滚轴3的值集合Ext.fly("button4").on('click', function () {Ext.MessageBox.alert("获取值", "滚轴3的值集合:" + slider3.getValues());});

3.效果展示

二、进度条控件 Ext.ProgressBar

1.加载进度条

[html]

    <div class="content"><button id="button1">执行</button><div id="p1" style="width: 300px;"></div></div><br />

[Js]

    //加载进度条var progressBar1 = Ext.create("Ext.ProgressBar", {id: "progressBar1",text: '准备中...',renderTo: 'p1'});Ext.fly("button1").on('click', function () {//模拟加载环境var f = function (v) {return function () {var i = v / 12;progressBar1.updateProgress(i, '进度:' + v + '/12');if (v == 12) {Ext.Msg.alert("提示", "加载完毕!");progressBar1.reset();   //复位进度条progressBar1.updateText("完成。");}};};for (var i = 1; i < 13; i++) {setTimeout(f(i), i * 200);}});

2.等候进度条

[html]

    <div class="content"><button id="button2">执行</button><div id="p2"></div><span id="p2text"></span></div><br />

[Js]

    //等候进度条var pbar2 = Ext.create("Ext.ProgressBar", {id: "progressBar2",renderTo: 'p2',width: '150px'});pbar2.on('update', function (val) {//每次更新可以执行的动作Ext.fly('p2text').dom.innerHTML += '>';});Ext.fly("button2").on('click', function () {Ext.fly('p2text').update('正在启动windows2000:');pbar2.wait({interval: 200,             //每次更新的间隔周期duration: 5000,             //进度条运作时间的长度,单位是毫秒increment: 5,               //进度条每次更新的幅度大小,表示走完一轮要几次(默认为10)。fn: function () {           //当进度条完成自动更新后执行的回调函数。该函数没有参数。Ext.fly('p2text').update('完成。');}});});

3.等候进度条,等待第三方事件

[html]

    <div class="content"><button id="button3">执行</button><div id="p3"></div><span id="p3text"></span></div>

[Js]

    //等候进度条,当第三方事件结束时,停止。var pbar3 = Ext.create("Ext.ProgressBar", {renderTo: 'p3',width: '250px'});Ext.fly("button3").on('click', function () {pbar3.wait({interval: 100,increment: 5});Ext.fly('p3text').update('第三方事件正在执行,请稍候....');setTimeout(function () {pbar3.reset();Ext.fly('p3text').update('执行完毕.');}, 5000);});

4.效果展示

三、编辑控件 Ext.Editor

编辑控件可以作用在一般html元素或者其他ext基本控件上,从而然这些基本元素和控件具备了编辑某些值的能力。

1.用文本框编辑普通文本

下面通过一个编辑控件作用在span标签上,双击该标签即可编辑该标签的文本类容。

[html]

    <h1>用文本框编辑普通文本</h1><div class="content"><span id="span1">请双击我修改文字</span></div>

[Js]

    //用文本框编辑普通文本var editor1 = new Ext.Editor({shadow: false,completeOnEnter: true,      //按回车时自动完成cancelOnEsc: true,          //按ESC自动退出编辑updateEl: true,            //有变化时更新ignoreNoChange: true,       //不理会没有变化的情况listeners: {complete: function (editor, value, oldValue) {Ext.Msg.alert('文本被改变', "从“" + oldValue + "” 变为“" + value + "”");}},field: {allowBlank: false,xtype: 'textfield',width: 150,selectOnFocus: true}});Ext.get("span1").on('dblclick', function (event, span1_dom) {editor1.startEdit(span1_dom);});

效果如下:

处于编辑状态时:

2.用下拉列表编辑

这个例子要修改Ext.Panel控件的标题。

[html]

        <h1>用下拉列表编辑</h1><div class="content" id="div2"></div>

[Js]

    //用下拉列表编辑var editor2 = new Ext.Editor({shadow: false,completeOnEnter: true,cancelOnEsc: true,updateEl: true,ignoreNoChange: true,listeners: {complete: function (editor, value, oldValue) {Ext.Msg.alert('文本被改变', "从“" + oldValue + "” 变为“" + value + "”");}},field: {width: 110,id: "combo1",//renderTo: 'div2',triggerAction: 'all',xtype: 'combo',editable: false,forceSelection: true,store: ['下拉项1', '下拉项2', '下拉项3']}});var panel = new Ext.Panel({renderTo: "div2",width: 200,height: 50,collapsible: true,layout: 'fit',title: '请双击标题',listeners: {afterrender: function (panel) {panel.header.titleCmp.textEl.on('dblclick', function (event, label1_dom) {editor2.startEdit(label1_dom);});}}});

效果如下:

处于编辑状态时:

转载于:https://www.cnblogs.com/liubo/p/3363643.html

ExtJs4 笔记(8) Ext.slider 滚轴控件、 Ext.ProgressBar 进度条控件、 Ext.Editor 编辑控件...相关推荐

  1. [转载]ExtJs4 笔记(8) Ext.slider 滚轴控件、 Ext.ProgressBar 进度条控件、 Ext.Editor 编辑控件...

    作者:李盼(Lipan) 出处:[Lipan] (http://www.cnblogs.com/lipan/) 版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其 ...

  2. android基础 [超级详细android常用控件解析(ScollView控件,ProgressBar进度条,PopupWindow控件)]

    目录 1 章节目录 2 ScollView控件 2.1 ScrollView简介 2.2 ScrollView使用 2.3 常用属性及方法 3 ProgressBar进度条 3.1 简介 3.2 常用 ...

  3. Android基础控件ProgressBar进度条的使用

    1.简介 ProgressBar继承与View类,直接子类有AbsSeekBar和ContentLoadingProgressBar, 其中AbsSeekBar的子类有SeekBar和RatingBa ...

  4. 安卓控件之竖向进度条

    Android控件篇 将ProgressBar翻转90度(竖向进度条) 需求 此前跟着老师遇到过一个电量管理软件,ui给出的切图要求主页有一个类似电池的显示电量的控件,如下图: 普通进度条的xml: ...

  5. C# ProgressBar 进度条控件

    1 继承关系 Object→MarshalByRefObject→Component→Control→ProgressBar ProgressBar表示Windows进度栏控件. 2 重要属性 序号  ...

  6. WPF自定义Slider样式外观 实现酷狗播放进度条

    自定义滑块左边和右边的样式以及滑块的样式 关键代码有注释说明 效果: VS2015下测试: VSBlend生成的模板 <Style x:Key="SliderStyle2" ...

  7. Android学习笔记之progressBar(进度条)

    一.说明 <1>在某项延续性工作的进展过程中为了不让用户觉得程序死掉了,需要有个活动的进度条,表示此过程正在进行中. <2>在某些操作的进度中的可视指示器,为用户呈现操作的进度 ...

  8. android如何创建进度条,Android控件ProgressBar--自定义进度条及源码分析

    这里用SeekBar做演示,SeekBar继承自ProgressBar,拥有其一切特性,并且其支持拖动以及DPAD左右键的进退.一起学习吧! 一.自定义SeekBar进度条样式 原生SeekBar效果 ...

  9. 02进度控件-01水波进度条-progresswater

    一.运行效果 二.功能特点 可设置范围值,支持负数值. 可设置水波密度,密度越大浪越多. 可设置水波高度,高度越大越浪. 可设置边框宽度和边框边距. 可设置是否显示进度值. 可设置进度值是否为百分比格 ...

最新文章

  1. php自动轮播图代码,JavaScript如何实现动态轮播图效果?(代码示例)
  2. HTML基础第三讲---字体
  3. Java8 Lamdba表达式 002
  4. php 中getall,PHP getallheaders无法获取自定义头(headers)的问题
  5. neo4j 4.1.8版本安装图算法包
  6. 看看50万码农怎么评论:为什么程序员工资那么高但很少有人炫富?
  7. 图数据库Neo4j的介绍与使用
  8. iOS-Runtime知识点整理
  9. python合并两个文本文件内容_利用python自带插件合并多个excle文件内容
  10. 软链接与硬链接的区别;描述通配符与正则表达式的区别
  11. TensorFlow 教程 --进阶指南--3.2变量:创建、初始化、保存和加载
  12. 服务器一般在什么位置,云服务器比较普通服务器差异在哪里
  13. el-select 默认选中
  14. php返回token什么意思,token什么意思
  15. 坚持十年博客写作,不忘初心,方得始终
  16. java-net-php-python-jspm服装类跨境电商库存控制计算机毕业设计程序
  17. 14个美容秘诀 网上疯传却最毁容
  18. PS背后的神秘AI力量 是Adobe憋了十年的神功
  19. 图片批量转换成pdf
  20. 浮生事,何必念念不忘

热门文章

  1. 陈松松:视频营销成交率低,这三个因素没到位
  2. 第一次 C语言课程设计
  3. java使用正则表达为数字添加千位符的简单方法
  4. 用koa开发一套内容管理系统(CMS),支持javascript和typescript双语言
  5. 0502-Hystrix保护应用-简介,使用,健康指标等
  6. shell编程基础之基本文本工具集合
  7. 解决打包软链接打包失败问题
  8. redis事务和脚本
  9. 换个姿势学数学:二次函数与拆弹部队
  10. CANOE入门(一)