您当前的位置: 首页 >  编辑器

宴西笔记

暂无认证

  • 3浏览

    0关注

    87博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Auto.js 文本带行号 编辑器

宴西笔记 发布时间:2021-12-21 18:21:38 ,浏览量:3

在这里插入图片描述
"ui";
//开发者 QQ 1105310045
//文本编辑器半成品
importClass(android.graphics.Typeface); //字体
importClass(java.lang.Character); //分中英文
ui.layout(
    
        
            
            
            
            
        
        
    
);
dm = ""
threads.start(function() {
    var r = http.get("http://www.baidu.com");
    代码 = r.body.string()
    for (var i = 0; i  15 || 坐标差x  15 || 坐标差y  160) {
                    画布x = 160
                }
                画布y += 坐标差y * 1.3
                if (画布y * 1.3 > 30) {
                    画布y = 0
                }
                屏幕X = 移动a
                屏幕Y = 移动b
            }
            按压时间++
            return true;
        case event.ACTION_UP:
            屏幕X = event.getX();
            屏幕Y = event.getY();
            删行y = Math.floor((Math.abs(画布y)) / 70)
            if (删行y > 40) {
                删行y -= 30
            } else {
                删行y = 0
            }
            行号 = Math.floor((Math.abs(画布y - 70) + 屏幕Y) / 70)
            光标坐标[1] = 行号 * 70
            计算横行光标()

            return true;
    }
    return true;
});

function 画代码和行号(canvas) {
    paint.setARGB(255, 197, 200, 198)
    for (let i = 1 + 删行y; i  dm.length - 1) {
            break;
        }
        //画代码
        字宽 = 画布x
        for (let l = 0; l  1600) {
                break;
            }
            if (分中英文(dm[i - 1][l])) {
                if (字宽 > 160 - 10) {
                    canvas.drawText(dm[i - 1][l], 字宽, 画布y + i * 70, paint);
                }
                字宽 += 50
            } else {
                if (字宽 > 160 - 10) {
                    canvas.drawText(dm[i - 1][l], 字宽, 画布y + i * 70, paint);
                }
                字宽 += 30
            }
        }
        //画线
        canvas.drawLine(0, 画布y + i * 70 + 10, 3000, 画布y + i * 70 + 10, paint);
    }
    //行号背景颜色
    paint.setARGB(255, 37, 40, 44)
    canvas.drawRect(0, 0, 160, canvas.getHeight(), paint);
    paint.setARGB(255, 198, 200, 199)
    for (let i = 1 + 删行y; i  dm.length - 1) {
            break;
        }
        //画行号
        canvas.drawText(i, 10, 画布y + i * 70, paint);
    }
}

function 画光标(canvas) {
    if (行号 + 1 > dm.length) {
        return
    }
    if (光标坐标[0]  14) {
        canvas.drawLine(光标坐标[0], 画布y + 光标坐标[1] - 40, 光标坐标[0], 画布y + 光标坐标[1] + 5, paint1);
        if (光标时间 == 28) {
            光标时间 = 0
        }
    }
    光标时间++
    //选择行颜色
    paint.setARGB(50, 255, 255, 255)
    canvas.drawRect(0, 画布y + 光标坐标[1] - 60, 3000, 画布y + 光标坐标[1] + 10, paint);
}

function 计算横行光标() {
    if (行号 > dm.length) {
        return
    }
    删位x = Math.floor(Math.abs(画布x - 160))
    let 横行 = 160
    for (let i = 0; i  删位x + 屏幕X) {

            if (分中英文(dm[行号 - 1][i])) {
                横行 -= 50
            } else {
                横行 -= 30
            }

            光标坐标[0] = 横行 - 删位x
            字位置 = i
            ui.字.setText(dm[行号 - 1][字位置])
            return
        }
    }

    字位置 = dm[行号 - 1].length
    光标坐标[0] = 横行 - 删位x
}
ui.写入.click(() => {
    let s = ui.输入框.text()
    if (!s) {
        return
    }
    画布开关 = false
    dmx = dm
    if (s.includes("\n")) {
        let 行数 = 行号 - 1
        if (行数             
关注
打赏
1660715546
查看更多评论
0.0704s