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

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

一、滚轴控件 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/BTMaster/p/3726365.html

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

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

    本篇要登场的有三个控件,分别是滚轴控件.进度条控件和编辑控件. 一.滚轴控件 Ext.slider 1.滚轴控件的定义 下面我们定义三个具有代表意义滚轴控件,分别展示滚轴横向.纵向,以及单值.多值选择 ...

  2. [转载]ExtJs4 笔记(10) Ext.tab.Panel 选项卡

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

  3. [转载]ExtJs4 笔记(3) Ext.Ajax 对ajax的支持

    作者:李盼(Lipan) 出处:[Lipan] (http://www.cnblogs.com/lipan/) 本篇主要介绍一下ExtJs常用的几个对JS语法的扩展支持,包括Ajax封装,函数事件操作 ...

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

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

  5. [转载]ExtJs4 笔记(4) Ext.XTemplate 模板

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

  6. [转载]ExtJs4 笔记(11) Ext.ListView、Ext.view.View 数据视图

    本篇介绍两个用来展示数据的容器控件,分别是Ext.ListView和Ext.view.View.Ext.ListView就是大名鼎鼎的 Ext GridPanel的前身,不过现在的Ext4已经将它整合 ...

  7. [转载]ExtJs4 笔记(2) ExtJs对js基本语法扩展支持

    作者:李盼(Lipan) 出处:[Lipan] (http://www.cnblogs.com/lipan/) 本篇主要介绍一下ExtJs对JS基本语法的扩展支持,包括动态加载.类的封装等. 一.动态 ...

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

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

  9. ExtJs4 笔记(3) Ext.Ajax 对ajax的支持

    原文地址为: ExtJs4 笔记(3) Ext.Ajax 对ajax的支持 <回到系列目录 本篇主要介绍一下ExtJs常用的几个对JS语法的扩展支持,包括Ajax封装,函数事件操作封装,还有扩展 ...

最新文章

  1. 【 MATLAB 】xcorr 函数介绍(互相关)简介
  2. Nginx重启时丢失nginx.pid文件解决方法nginx: [emerg] open() “/var/run/nginx/nginx.pid“ failed (2: No such fi
  3. ServletContextListener在Springboot中的使用
  4. html5中折叠面板,Ant Design中折叠面板Collapse
  5. lambda 表达式定制操作
  6. python自己做个定时器_python 创建一个自己的类计时器
  7. java输出变量_Java笔记1: 输入输出与变量常量
  8. CUDA学习(二十九)
  9. Redis set集合结构及命令详解
  10. little w and Sum(思维)
  11. Spring事务管理—aop pointcut expression解析
  12. Android Service用法知识点的讲解
  13. 如何解决css样式表在不同浏览器中显示效果不同的问题
  14. 【优化算法】鲸鱼优化算法(WOA)【含Matlab源码 1243期】
  15. 《WinForm开发系列之控件篇》Item65 VScrollBar (暂无)
  16. java视频上传,播放预览,解决苹果手机视频无法预览的问题
  17. 3.7V转12V2A 15V2A 大功率升压芯片 拉杆音响专用升压芯片
  18. 前端特效-霓虹灯按钮
  19. cmd命令行乱码 oracle_Oracle查询中文乱码问题
  20. 知识图谱论文读后感001

热门文章

  1. android在国内如何盈利,安卓系统在中国靠什么盈利?
  2. 使用 ERD Online元数据管理平台,轻松创建和共享企业元数据
  3. H5无插件实现实时海康、大华摄像头网页预览
  4. 计算机视觉 马尔_基于视觉AI的智能车牌识别相机,识别更精准功能更强大
  5. 东北大学计算机难度,东北大学考研难度
  6. java channel源码_彤哥说netty系列之Java NIO核心组件之Channel
  7. c语言输出菱形13579,C语言怎样输出菱形
  8. 蓝牙耳机打电话有回音怎么办?通话质量很好的蓝牙耳机推荐
  9. load和onload的区别
  10. 一个亿万富翁利用商城软件白手起家的故事