自定义ExtJS主题
ExtJS提供的可以使用的主题包对于创建一个干净专业的程序来说已经很有创意了,然而,你可能还是会希望提供自己的一种设计方式或现在存在的企业设计方式。
从历史上来说,给程序美化就是指的给html标签提供渲染组件的规则,但是这样做也会有一些弊端出现。首先,你需要负担的是各种支持的浏览器。其次,随着框架的成熟,很多不愉快就会产生,比如你的规则风格的变化需要追逐潜在元素的改变。通过ExtJS提供的API就可以很好的解决这些问题。
通过theming API创建的主题可以在任何ExtJS程序中共享。这就运行你可以编写一次规则,重复给你的程序持续改变风格。这个指导就会列出必要的主题工作,不论你是创建一个工作空间还是应用程序或者单独就是创建一个个性化主题。
这个指导将会覆盖基本的关于使用classic toolkit(ExtJS)的个性化主题,接下来,我们将会覆盖不同的现代主题(SenchaTouch)的方式,最终,将会介绍Triton主题和扩展性。
如果你想做以上事情,你就需要安装sencha cmd 6以上版本。可选的JRE1.7版本,如果你需要使用app watch的话,就必须安装。如果不安装JRE7以上,那就需要每次启动sencha app refresh来刷新改动。
构建一个个性化主题
当你准备好以上步骤的时候,你就可以自定义主题了。首先需要创建一个工作空间,但这不是必须的,使用如下命令创建工作空间 sencha -sdk {path/to/Ext-JS-SDK} generate workspace my-workspace
一、创建一个测试使用的工作程序
使用命令sencha -sdk ext generate app -classic ThemeDemoApp theme-demo-app
切换到当前程序 cd theme-demo-app
二、创建自定义主题目录,使用 命令 sencha generate theme my-classic-theme
启动程序 sencha app watch
浏览器查看效果 http://localhost:1841
修改packages/local/my-classic-theme/package.json下的extend节点,"extend": "theme-neptune"修改为"extend": "theme-crisp"
三、配置全局变量
创建文件packages/local/my-classic-theme/sass/var/Component.scss增加内容$base-color: #317040;
在应用程序中使用自定义的主题。找到theme-demo-app/app.json将"theme": "theme-triton",替换为"theme": "my-classic-theme",
四、给gridpanel设置红色边框,修改my-classic-theme/sass/src/panel/Panel.scss
@include extjs-panel-ui(
$ui: 'highlight-framed',
$ui-header-background-color: red,
$ui-border-color: red,
$ui-header-border-color: red,
$ui-body-border-color: red,
$ui-border-width: 5px,
$ui-border-radius: 5px,
$ui-header-color: white
);
自定义ExtJS主题的更多相关文章
- 自定义element-ui主题
自定义element主题颜色:主要参考这个文章https://blog.csdn.net/wangcuiling_123/article/details/78513245,再自己做了一遍成功.感谢. ...
- Soda Theme sublime 自定义编辑器主题
1.Soda ThemeSublime Text 3中较为常用的一款自定义编辑器主题,用过的人都说好.Soda Theme包含代码着色.标签.图标,拥有light和dark两种颜色主题便于用户在不同时 ...
- CodeMix使用教程:构建自定义DevStyle主题
[MyEclipse CI 2019.4.0安装包下载] DevStyle主题允许开发人员自定义工作台,无论是喜欢带有明亮图标的浅色背景还是带有柔和色彩的神色背景,开发人员都可以将工作台调整到适合的色 ...
- 如何自定义echarts主题
上一篇,选择echarts原有的主题样式,那么如何自定义自己的主题 与选择原有主题类似 1.echarts官网地址http://echarts.baidu.com/echarts2/doc 在工具中 ...
- 自定义grub主题
1 概述 自定义grub引导菜单的主题,笔者的linux是deepin,感觉默认的grub主题不太好看,嗯,没办法,就是想改了. 这篇文章主要是修改/boot/grub/grub.cfg以及/boot ...
- react中自定义antd主题与支持less(第二部)
自定义主题 首先自定义主题需要修改antd,antd本身也是less写的之后编译成css的,所以当我们需要使用less. 1.yarn add react-app-rewire-less --dev ...
- 自定义putty主题
PuTTY很早之前就没有更新了(0.62),因为都是开源的所以有人branch出来做了增强,如这个PuTTY tray,增加了超链等功能: https://puttytray.goeswhere.co ...
- 自定义ExtJS插件
http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763105392230e54f73b6f93834c28c3933fc239045647 ...
- 仿ElementUI构建自己的Vue组件库用babel-plugin-component按需加载组件及自定义SASS主题
最近使用ElementUI做项目的时候用Babel的插件babel-plugin-component做按需加载,使得组件打包的JS和CSS包体积大大缩小,加载速度也大大提升,所有想模仿做一个组件库也来 ...
随机推荐
- 【一天一道LeetCode】#55. Jump Game
一天一道LeetCode系列 (一)题目 Given an array of non-negative integers, you are initially positioned at the fi ...
- 【公开课】【阿里在线技术峰会】魏鹏:基于Java容器的多应用部署技术实践
对于公开课,可能目前用不上这些,但是往往能在以后想解决方案的时候帮助到我.以下是阿里对公开课的整理 摘要: 在首届阿里巴巴在线峰会上,阿里巴巴中间件技术部专家魏鹏为大家带来了题为<基于Java容 ...
- Android帧布局(Frame Layout)
Android帧布局(Frame Layout) FrameLayout是最简单的一个布局管理器.FrameLayout为每个加入其中的组件创建一个空白区域(一帧),这些组件根据layout_grav ...
- STL算法设计理念 - 谓词,一元谓词demo
谓词: 一元函数对象:函数参数1个: 二元函数对象:函数参数2个: 一元谓词 函数参数1个,函数返回值是bool类型,可以作为一个判断式 谓词可以使一个仿函数,也可以是一个回调函数. demo 一元谓 ...
- android使用ViewPager实现欢迎引导页
android使用ViewPager实现欢迎引导页 大多数APP第一次启动的时候,都会有一个引导界面,左右滑动,到最后一张,用户点击才再次进入主界面.当第二次启动的时候,则直接进入主界面. 这种效果一 ...
- table中 点击某一行变色
效果图: <html> <head> <meta http-equiv="Content-Type" content="text/html; ...
- java http缓存
HTTP/1.1中缓存的目的是为了在很多情况下减少发送请求,也即直接返回缓存:同时在许多情况下可以不需要发送完整响应.前者减少了网络回路的数量,挺高响应速度,HTTP利用一个"过期(expi ...
- Otto事件总线框架的使用
Otto是一个在Android中的事件总线框架,它是square的一个开源框架,具体介绍点击这里,项目下载点击这里 为什么要使用Otto事件总线: 通常来说在Android中: 1.Activity与 ...
- Systemc在VC++2010安装方法及如何在VC++2010运行Noxim模拟器
Systemc在VC++2010的安装方法可以参考文档"Systemc with Microsoft Visual Studio 2008.pdf".本文档可以在"htt ...
- 使用钩子参与到TCP拥塞事件的处理中
TCP定义了几个拥塞事件,当这些事件发生时,我们可以通过TCP的拥塞控制算法,调用自定义的处理函数, 来做一些额外的事情的.也就是说,我们可以很简便的参与到TCP对拥塞事件的处理过程中. Author ...