aauto桌面小应用-简单番茄钟
近日粗略学习了aauto这一动态语言,尝试写了一个番茄钟的小应用。aauto主要面向win系统桌面小程序的快速开发,开发平台十分小巧,但是功能十分强大。
此程序给同为初学者 一个参考。
关于番茄钟:
工作时间内全力工作,休息时间好好休息,帮助你劳逸结合,提高工作效率。一个番茄钟为一个工作单位,在一个番茄钟开始前设定合适工作目标,尽量在一个单位内完成这个目标。
列出两个番茄钟的相关软件,供参考:
- 来自豆瓣的番茄土豆:https://pomotodo.com/
- 来自chrome的休息一下:http://wzh.me/technology/chrome-take-a-rest/
简单番茄钟程序介绍:
概述:
具体实现:
import win.ui;
import win.timer;
import Mine.TimeSys;
import Mine.GrowUpSys;
/*DSG{{*/
mainForm = ..win.form(text="定时器";right=134;bottom=51;max=false;min=false;topmost=1)
mainForm.add(
m={cls="static";text="00";left=6;top=6;right=30;bottom=31;align="center";center=1;font=LOGFONT( h=-20 );transparent=1;z=1};
s={cls="static";text="00";left=39;top=6;right=65;bottom=31;align="center";center=1;font=LOGFONT( h=-20 );transparent=1;z=2};
start={cls="button";text="开始";left=80;top=8;right=124;bottom=42;font=LOGFONT( name='Tekton Pro Ext';h=-16;weight=700 );z=6};
static={cls="static";text=":";left=26;top=6;right=43;bottom=27;align="center";center=1;font=LOGFONT( h=-20 );transparent=1;z=5};
static5={cls="static";text="番茄 X";left=4;top=29;right=49;bottom=49;align="center";center=1;transparent=1;z=3};
南瓜值={cls="static";text="0";left=40;top=29;right=72;bottom=49;align="center";center=1;transparent=1;z=4}
)
/*}}*///初始化
var timesys = Mine.TimeSys(0,30,0);
timesys.initTime();
var growUp = Mine.GrowUpSys();BlockInput := User32.api("BlockInput","BOOL (BOOL fBlockIt)");mainForm.start.oncommand = function(id,event){var text = mainForm.start.text;if(text=="开始")//{//开始计数timesys.start();//转变为停止text = "重置";}elseif(text == "重置"){//重置时间timesys.initTime();text="开始"; } mainForm.start.text = text;
}var isWork = true;
var workTimeHandle = function(){if(timesys.timeout()){//刷新成就growUp.update();//重置时间timesys.initTime();mainForm.start.text="开始";//锁住键盘鼠标BlockInput(1);timesys.setTime(0,5,0);timesys.start(); isWork = !isWork; }else {timesys.update();}}var restTimeHandle = function(){if(timesys.timeout()){timesys.setTime(0,30,0);timesys.initTime();BlockInput(0);isWork = !isWork; }else {timesys.update();}
}Mine.TimeSys.time1.onTimer = function(hwnd,msg,id,tick){if(isWork){workTimeHandle();}else {restTimeHandle();}}mainForm.onClose = function(hwnd,message,wParam,lParam){growUp.close();
}
mainForm.show() ;
win.loopMessage();
2、GrowUpSys.aau 文件处理番茄计数,有个很难忍受的问题是不知道怎么把data文件内置在exe文件,现在发布后需要多出一个data.txt文件来管理计数数据。
namespace Mine;
import fsys;class GrowUpSys{/*成长系统*/ctor(){var 番茄=0; var filePath = "\data.txt";var str = ..string.load(filePath);if(#str)番茄 = tonumber(str);global.mainForm.番茄值.text = 番茄;};close = function(){ if( !..io.exist(filePath) )//若路径不存在..fsys.createParentDir(filePath);..string.save(filePath,tostring(番茄) );}update = function(){番茄++;global.mainForm.番茄值.text = 番茄;}
}
import win.ui;
import win.timer; namespace Mine;class TimeSys{ctor(h1,m1,s1){var h,m,s;var startTime;var tm;var show;var initTime;var time;this.h = h1;this.m = m1;this.s = s1;time1 = ..win.timer(,1000);};setTime = function(h1,m1,s1){this.h = h1;this.m = m1;this.s = s1;}show = function(){ //将时间改写到显示//global.mainForm.h.text = ..string.format("%02d",tm.hour);global.mainForm.m.text = ..string.format("%02d",tm.minute);global.mainForm.s.text = ..string.format("%02d",tm.second);}initTime = function(){time1.disable();var str = this.h+':'+this.m+':'+this.s;tm = ..time(str,"%H:%M:%S");this.show(); }start = function(){this.initTime();time1.enable();}update = function(){tm.addsecond(-1);this.show();}timeout = function(){if(tm.hour==0&&tm.minute==0&&tm.second==0){return 1; }return 0; }}
源码下载前往:
aauto桌面小应用-简单番茄钟相关推荐
- 基于微信小程序实现番茄钟专注时间项目演示【附项目源码+论文说明】
基于微信小程序实现番茄钟专注时间项目演示 摘要 时间管理是指事先计划和运用一定的技能.方法和事物,以敏感.有效地利用时间完成既定的个人或安排的过程.其中番茄法则是一种先进的时间管理理论与方法,正受到越 ...
- 基于微信小程序实现番茄钟专注时间项目演示【附项目源码+论文说明】分享
基于微信小程序实现番茄钟专注时间项目演示 摘要 时间管理是指事先计划和运用一定的技能.方法和事物,以敏感.有效地利用时间完成既定的个人或安排的过程.其中番茄法则是一种先进的时间管理理论与方法,正受到越 ...
- 微信小程序--实现番茄钟功能
番茄钟: 经常使用番茄钟的各种app,自己也想尝试一下制作,该小程序主要实现了番茄时钟.效率统计等功能. 设计如下: 代码地址:https://gitcode.net/weiba_tao/myprac ...
- 用antd实现番茄钟
番茄工作法是十分有效的时间管理工具,动手开发一个番茄钟提高自己的工作效率. 点击链接,体验一个简单番茄钟的实现效果:软件测试工具箱 只需要一个js文件,代码如下 import { Typography ...
- 从无到有的基于QT软件的DIY桌面番茄钟(上)
基于QT软件的DIY桌面番茄钟-上篇 前言 参考本教程(上篇)可实现的功能: 实现细节: Day 1: 需求导图: QT的安装: Day 2: 创建项目: 构建无边框界面(后续可添加缩放功能,未添加) ...
- 基于微信小程序的todo番茄钟设计与实现源码
关注公众号,公众号内回复1001获取下载链接 1.需求 设计微信小程序实现todo番茄钟功能,支持任务计划导入,时间设定,微信消息提醒等功能 2.功能展示
- 【python小项目】用python写一个小工具——番茄钟
用python写一个小工具--番茄钟 最近听到朋友说在用番茄钟,有点兴趣也想下载一个来用用,后面仔细一想这玩意做起来也不难,索性自己顺手写一个算了,在这里也分享给大家了 一.功能简述 番茄钟即番茄工作 ...
- 用Java实现一个最简单的番茄钟
我只想要一个最简单最纯粹的番茄钟,奈何找不到... 好吧,自己写呗,代码真的很简单,我就弹个框就得了哈哈哈 import javax.swing.*;/*** @Deacription 一个简单的番茄 ...
- python小软件制作教程_[Python]手把手教程:Python制作番茄钟
这篇文章是根据Udacity的免费课程 编程基础:Python所做的笔记,适合零基础学习Python 我们先了解这个番茄钟的概念,就是每隔一段固定的时间就提醒你休息一下,可能是播放一段音乐, 弹出一个 ...
- 备忘录,番茄钟,复盘反馈的学习类小程序
寒假完成的一个项目,对javascript真的是从零开始学起不过很好上手,借助于方便的云开发,也不用折腾后端,最后也顺利结题了. 本项目开发了一款软件,帮助大学生制作定制的学习计划,改善学习习惯,提高 ...
最新文章
- DOM4J解析XML文档、Document对象、节点对象节点对象属性、将文档写入XML文件(详细)...
- Linux-鸟菜-4-关机的正确姿势
- 转载:谢谢原作者:块设备驱动实战基础篇四 (逐渐成型,加入ioctl通信机制)
- UIButton的属性设置
- 子界类型的定义和应用
- 对话实录|华为云.通信云激活无限商业潜力
- AtCoder Beginner Contest 176总结
- 丢弃commit_git丢弃本地修改的所有文件(新增、删除、修改)
- 训练日志 2019.1.24
- lm_license_file 冲突怎么办_【微课+语音】孩子一个多月没有上学了怎么办?
- 1000个网络摄像头如何组网?
- oracle11g ADR 位置
- Java中的自动拆箱装箱(AutoboxingUnboxing)
- 基于M0 MCU的无感FOC航模电机控制
- AJAX参数传递时有特殊符号时解决办法
- 51单片机------闪烁灯(实验报告)
- 区块链学习2——区块链浏览器的搭建
- 哈尔滨工程大学学生郭天祥六年非一般的大学
- Android辅助功能 Accessibility Services基本用法笔记
- IDEA+Java+SSM+Mysql+JSP实现Web宠物商城系统