美文网首页
Ext一些研究笔记(持续更新)

Ext一些研究笔记(持续更新)

作者: 烟落凌风 | 来源:发表于2018-07-31 17:27 被阅读0次

2018-7-30

1 研究ext[button]自定义样式的问题

比较复杂(深度定制化自己页面的请绕路),建议如果需要修改button的背景颜色以及其中字体修改的可以考虑以下方案

  1. 如果要求兼容性(即兼容IE8、9)等建议使用图片方式
  2. FF、chrom可以直接支持背景颜色
  3. IE10及其以上等可以自定义样式
   /**longinButton 是需要应用的button**/
    .loginButton{
        background:#46a546;/**背景颜色**/
        border: none;!important;
    }
    .loginButton .x-btn-inner {/**button中的字体在这里设置**/
        color: #ffffff;
        font-size:18px;
        height:20px;
    }
    .loginButton.x-btn-default-small.x-btn-over{/**鼠标浮动上去的样式**/
        background: #4cc54c !important;
        border-color: #4cc54c !important;
        background-color: #4cc54c !important;
        background-image: none !important;
    }
    /**点击时的样式等各种样式也可以采取类似的方式实现**/
  1. 参考网址:https://stackoverflow.com/questions/27649281/extjs-how-to-customize-buttons
  2. 样式演示地址:https://fiddle.sencha.com/#fiddle/fim&view/editor

2 二维码配置界面

想把按钮直接放在最下面,使用bbar、tbar等时会出现一条线,样式不符合的不要使用这种了

2018-07-31

1 研究Ext[Form]字段自动换行

可以实现自动换行,需要设置布局layout:column,然后为每一个字段指定百分比的宽度。以下是示例:

Ext.define('Learn.home.LearnHome',{
    extend:'Ext.form.Panel',
    title:'测试panel',
    width:750,
    height:500,
    layout: "column",
    fieldDefaults:{
        labelWidth:70,
        labelAlign:"right"
    },
    initComponent:function(){
        var me = this;
        me.callParent();
        var fields = this.initFileds();
        Ext.each(fields,function(field,index){
            me.add(field);
        });
    },
    initFileds:function(){
        var filelds = new Array();
        var userNameFiled = {
            xtype:'textfield',
            name:'name',
            fieldLabel:'姓名',
            height:20,    
            columnWidth:.30,
            width:'100%',
            margin:'10 0 0 10'
        };
        var userNameEnFiled = {
            columnWidth:.30,
            xtype:'textfield',
            name:'enName',
            fieldLabel:'英文名',
            height:20,
            width:'100%',
            margin:'10 0 0 10'
        };    
        var userPassPortFiled = {
            xtype:'textfield',
            name:'passport',
            fieldLabel:'护照号',
            columnWidth:.30,
            height:20,
            width:'100%',
            margin:'10 0 0 10'
        };
        var outControyFiled = {
            xtype:'textfield',
            name:'outControy',
            fieldLabel:'出访国家',
            columnWidth:.30,
            height:20,
            width:'100%',
            margin:'10 0 0 10'
        };
        var newOutControyFiled = {
            xtype:'textfield',
            name:'newOutControy',
            fieldLabel:'出访国家',
            columnWidth:1,
            height:20,
            width:'100%',
            margin:'10 0 0 10'
        };
        filelds.push(userNameFiled);
        filelds.push(userNameEnFiled);
        filelds.push(userPassPortFiled);
        filelds.push(outControyFiled);
        filelds.push(newOutControyFiled);
        return filelds;
    }
});

2 研究Panel以图片为背景,然后上面写字的实现IE是否支持

button以图片做背景目前兼容性不好,可以见 2018-7-30 第一项的研究。
下面主要使用了component、container、panel以图片做背景的情况。示例代码

Ext.define('Learn.home.LearnPanelBackground',{
    extend:'Ext.panel.Panel',
    title:'以image做背景测试显示字体',
    width:700,
    height:800,
    layout:'hbox',
   // margin:'20 0 0 20',
    initComponent:function(){
        this.callParent();
        this.addPanel();
    },
    addPanel:function(){
        var me = this;
        var buttonComponent={
            xtype:'component',
            width:100,
            height:40,
            margin:'10 0 0 10',
            padding:'0 0 0 0',
            style:'background:url(image/buttonground-blue.png);font-size:16px;color:white;cursor:pointer;line-height:40px;text-align:center',
            html:'component'
        };
        var buttonContainer={
            xtype:'container',
            width:100,
            height:40,
            margin:'10 0 0 10',
            padding:'0 0 0 0',
            style:'background:url(image/buttonground-blue.png);font-size:16px;color:white;cursor:pointer;line-height:40px;text-align:center',
            html:'container'
        }
        var buttonPanel={
            xtype:'panel',
            width:100,
            height:40,
            margin:'10 0 0 10',
            padding:'0 0 0 0',
            border:false,//panel如果设置border false的话有有阴影效果
            bodyStyle:{
                background:'url(image/buttonground-blue.png)',
                fontSize:'16px',
                color:'white'
            },
            style:'cursor:pointer;line-height:40px;text-align:center',
            html:'panel'
        }
        var buttonPanelBorder={
            xtype:'panel',
            width:100,
            height:40,
            margin:'10 0 0 10',
            padding:'0 0 0 0',
            bodyStyle:{
                background:'url(image/buttonground-blue.png)',
                fontSize:'16px',
                color:'white'
            },
            style:'cursor:pointer;line-height:40px;text-align:center',
            html:'panel'
        }
        me.add(buttonComponent);
        me.add(buttonContainer);
        me.add(buttonPanel);
        me.add(buttonPanelBorder);
    }
});
QQ截图20180731172626.png
后续链接 2018-08-01

相关文章

  • Ext一些研究笔记(持续更新)

    2018-7-30 1 研究ext[button]自定义样式的问题 比较复杂(深度定制化自己页面的请绕路),建议如...

  • MYSQL研究笔记(持续更新)

    0x01 ~~ 觉得对mysql的认知不够深入,以前去好几个地方面试的时候总被问到一些跟mysql相关的内容,自己...

  • gradle常见开发记录

    持续更新: gradle使用技巧(def定义变量 rootProject.ext 添加全局变量)[https://...

  • Android之坑

    这只是一篇随便,在研究Android过程中的一些小坑或大坑将会随笔记下,以备来日观看,本文将会持续更新(有坑就更新...

  • 涂鸦笔记:《未来简史》-1

    最近决定把今年读的书画一些涂鸦笔记。 这是序言。 持续更新ing

  • 使用swift的100个tips

    持续更新的个人笔记

  • 《高性能mysql》笔记全集

    本文记载了个人阅读《高性能mysql》的一些笔记 将持续更新一些内容。 1.基础笔记https://www.jia...

  • Js相关笔记-2

    持续更新,主要方便于存一些笔记。 闭包 function f1() { var n = 999; function...

  • Js相关笔记-1

    持续更新,主要方便于存一些笔记。 对象 使用for...in循环,提取对象属性名var obj = { key1...

  • 顶置目录(方便查看)

    简书技巧 简书基础简书Markdown进阶(持续更新) 笔记 操作系统 趣味合集 趣味合集(持续更新......)...

网友评论

      本文标题:Ext一些研究笔记(持续更新)

      本文链接:https://www.haomeiwen.com/subject/buihvftx.html