TIScript 代码Demo
var filelist = null;
function alert(msg)
{
view.msgbox(null,msg);
}
self.on("click", "menu > li ", function() {
var button_value = this.value;
if(button_value=="打开PDF")
{
filelist = view.onOpenPdf();
var mLen = filelist.length;
for(var i=0; i < mLen; i++){
$(#left_preview_box).$append(<img id=list_{i} />);
//$(img).attributes["src"] = "./image/ball.png";
//$(img).attributes["width"]="200px";
}
for(var i=0; i < mLen; i++)
{
$(#list_{i}).attributes["src"] = filelist[i];
$(#list_{i}).attributes["width"] = "80px";
}
}
}); $(#left_preview_box).on("click","img",function(){
var m_id = this.attributes["id"].toString(); var m_no = m_id.substring(5,m_id.length).toInteger(); if(filelist)
{
$(#left_view_box>img).attributes["src"] = filelist[m_no];
$(#left_view_box>img).attributes["width"] = "100%";
}
}); self.ready = function() {
var start_x;
var start_y;
var end_x;
var end_y;
var is_move = false;
var is_enter = false;
var is_ctrl = false;
var is_wheel = 0;
var cur_x;
var cur_y;
$(#main_image).on("mousedown",function(event){
if(is_ctrl){
start_x = event.x;
start_y = event.y;
is_move = true;
} });
//Ctrl+MouseLeft 移动图片
$(#main_image).on("mousemove",function(event){ cur_x = event.x;
cur_y = event.y; if(is_move && is_ctrl)
{
end_x = event.x;
end_y = event.y; var g_left = $(#main_image).style["left"].toString();
var n_left = g_left.substring(0,g_left.length-2).toInteger(); var g_top = $(#main_image).style["top"].toString();
var n_top = g_top.substring(0,g_top.length-2).toInteger(); var m_left = (n_left + end_x -start_x)+"px";
var m_top = (n_top + end_y -start_y)+"px"; $(#main_image).style["left"] = m_left;
$(#main_image).style["top"] = m_top;
}
});
$(#main_image).on("mouseup",function(event){
var msg = (end_x-start_x)+","+(end_y-start_y);
is_move = false; });
$(#main_image).on("mouseleave",function(event){
is_move = false;
});
var idd = 0;
function windowKeyHandler() // install movable window handler
{
function onKeyDown(evt) { if(evt.keyCode == Event.VK_CONTROL )
{
is_ctrl = true;
}
}
function onKeyUp(evt) {
if(evt.keyCode == Event.VK_CONTROL )
{
is_ctrl = false;
}
}
function onWheelPos(evt){ }
function onImageWheelPos(event){
is_wheel = event.wheelDelta;
//放大
if(is_ctrl)
{
$(#left_view_box).style["overflow"]="hidden";
if(is_wheel == 1){
$(#main_image).style["background-size"] = "150%";
}
else if(is_ctrl && is_wheel == -1){
$(#main_image).style["background-size"] = "50%";
}
}
else{
$(#left_view_box).style["overflow"]="scroll";
} }
view.root.subscribe(onKeyDown, Event.KEY, Event.KEY_DOWN );
view.root.subscribe(onKeyUp, Event.KEY, Event.KEY_UP );
//view.root.subscribe(onWheelPos, Event.MOUSE, Event.MOUSE_WHEEL );
$(#main_image).subscribe(onImageWheelPos, Event.MOUSE, Event.MOUSE_WHEEL );
return true;
}
windowKeyHandler();
}
var ret = view.msgbox(#information, "这个函数将调用底层编写的函数",
"你确定调用?",[ {id:#yes, text:"确定"}, {id:#no, text:"取消"} ] );
if( ret == #yes )
{
stdout.println("确定");
// 一定要以view.xxxx(xx)方式调用
ret = view.addsome(3,2);
}else{
stdout.println("取消");
}
function paint(gfx) {
gfx.pushLayer(#background-area);
gfx.strokeWidth(0.7);
gfx.strokeColor(color(255,255,0));
for(var i=0;i<rectList.length;i++)
{
gfx.rectangle(rectList[i].x,rectList[i].y,rectList[i].w,rectList[i].h);
}
//gfx.popLayer();
gfx.save();
}
$(#canvasAuto).paintContent = paint;
$(#canvasAuto).refresh();
transition: height(quart-out,1.0s,quart-in);
设置滚动条的位置
$(#view_box).scrollTo(0,50);
var p1 = $(#view_box).box(#height,#content); 获取该div内容的总高度
var p2 = $(#view_box).box(#height,#client); 获取该div可见高度
TIScript 代码Demo的更多相关文章
- 嵌入式 hi3518x平台h264+g711a封装mp4代码demo
先看代码吧,有代码有真相,具体代码的demo(下载demo的朋友请勿在网上上传我的demo,谢谢)下载连接为: http://download.csdn.net/detail/skdkjxy/8071 ...
- 用Portable.BouncyCastle来进行加解密的代码demo
前言 这里对之前对接的公司中的代码demo做一个总结,原本为清一色的java,哈哈.这里都转成C#.用到的库是Portable.BouncyCastle.官网.之前也是准备用.net core 内置的 ...
- python 网络通讯 服务器端代码demo,能够同时处理多个客户端的连接请求
这是一个python网络通讯服务器端的代码demo,能够同时处理多个客户端的连接请求. from socket import * import threading from datetime impo ...
- ThinkPHP6 上传图片代码demo
本文展示了ThinkPHP6 上传图片代码demo, 代码亲测可用. HTML部分代码 <tr> <th class="font-size-sm" style=& ...
- Javascript类继承-机制-代码Demo【原创】
最近看到<Javascript设计模式>,对js模拟的”继承方式“有了更深一步的了解,虽然之前也总是用到prototype.new ,但只是知其然不知所以然,现在将类继承的方法整理如下,暂 ...
- jdk8十大特性并代码demo(转)
一.十大特性 1.Lambda表达式 2.Stream函数式操作流元素集合 3.接口新增:默认方法与静态方法 4.方法引用,与Lambda表达式联合使用 5.引入重复注解 6.类型注解 7.最新的Da ...
- 机器学习:eclipse中调用weka的Classifier分类器代码Demo
weka中实现了很多机器学习算法,不管实验室研究或者公司研发,都会或多或少的要使用weka,我的理解是weka是在本地的SparkML,SparkML是分布式的大数据处理机器学习算法,数据量不是很大的 ...
- 微信支付接口--超详细带注释代码--Demo
如果本文对你有用,请爱心点个赞,提高排名,帮助更多的人.谢谢大家!❤ 如果解决不了,可以在文末进群交流. 如果对你有帮助的话麻烦点个[推荐]~最好还可以follow一下我的GitHub~感谢观看! 微 ...
- 线性回归和梯度下降代码demo
程序所用文件:https://files.cnblogs.com/files/henuliulei/%E5%9B%9E%E5%BD%92%E5%88%86%E7%B1%BB%E6%95%B0%E6%8 ...
随机推荐
- C++ - 定义无双引号的字符串宏
在某些特殊场合下,我们可能需要定义一个字符串宏,但又不能用双引号 比如像这样 #define HELLO hello world 如果我们只是简单的展开HELLO,肯定会无法编译 std::cout ...
- Android之官方导航栏ActionBar
一.ActionBar概述 ActionBar是android3.0以后新增的组件,主要用于标示应用程序以及用户所处的位置并提供相关操作以及全局的导航功能.下面我们就看看如何使用ActionBar,真 ...
- windows多线程--原子操作
推荐参考博客:秒杀多线程第三篇 原子操作 Interlocked系列函数 原子操作 VS 非原子操作 原子操作就是不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何线程切 ...
- Dockerfile 构建kibana 反向代理应用做用户认证访问
FROM centos MAINTAINER z*****ch.cn RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime & ...
- Swap 分区的2种方式 详解与例子
安装完Linux系统后,swap分区太小怎么办,怎么可以扩大Swap分区呢?有两个办法,一个是从新建立swap分区,一个是增加swap分区.下面介绍这两种方法: 第一您必须有root权限,过程中一定要 ...
- Java内省详解
内省和反射有什么区别: 反射式在运行状态把Java类中的各种成分映射成相应的Java类,可以动态的获取所有的属性以及动态调用任意一个方法,强调的是运行状态. 内省机制是通过反射来实现的,BeanIn ...
- 微信支付(APP支付)-服务端开发(一)
微信支付,首先需要注册一个商户平台公众账号,(网址:https://pay.weixin.qq.com/index.php/home/d_login) 目前微信支付的接入方式有四种方式:公众号支付,A ...
- 【Windows】Windows中解析DOS的DIR命令使用
总结一下cmd中的dir命令的用法 64位win10系统上,打印帮助文档. D:\test>dir /? 显示目录中的文件和子目录列表. DIR [drive:][path][filename] ...
- 11g新特性-自动sql调优(Automatic SQL Tuning)
11g新特性-自动sql调优(Automatic SQL Tuning) 在Oracle 10g中,引进了自动sql调优特性.此外,ADDM也会监控捕获高负载的sql语句. 在Oracle 11g中, ...
- Jason 和 Java 对象转化示例
1.工程 2.代码: JsonUtil.java package com.my.json; import java.util.ArrayList; import java.util.List; imp ...