
相信大家的手机上都装了很多App,非常占用空间,其实微信小程序就很便捷,无需安装,直接打开就能使用。
下面这10个赞不绝口的微信小程序,每一个都暗藏惊喜,请你低调使用。
特色: 照片自动生成证件照。
自从发现了这款宝藏小程序,拍所有证件照我都没花过钱,支持各种规格的证件照制作,比如居住证、护照、考试照片、简历照片等,关键免费使用,还没任何广告。
特色: 集合20多种实用工具。
这个小程序就厉害了,无论是工作、生活、 娱乐 都能用得到!全屏时钟、表情制作、拼接、翻译、九宫格切图、生成二维码、文字转语音等,统统都有,非常丰富。
特色: 计算缴纳的五险一金。
打工人每个月都要缴的五险一金,到底应该缴多少呢?它可以帮你了解不同城市的社保和公积金基数,自动计算出应缴社保和公积金金额,单位和个人应缴比例都一清二楚。
特色: 批量保存去水印。
我们在看公众号文章或刷小红书的时候,想要保存上面的,可是有水印怎么办?你只要把链接复制进去后,就能免费提取了,此外,短视频水印也能一键去除哦。
特色: 每天免费领取模板资源。
年终总结写完了吗?这个小程序每天都能白嫖两套高质量的PPT模板,只需电脑端打开办公资源网,挑选自己喜欢的PPT模板,将模板ID粘贴到小程序里,就能下载模板。
特色: 练习学习吉他入门d唱。
有没有会d吉他的朋友?这里有很多优质的吉他谱,除了推荐的谱子也支持搜索,并且可以在线播放学习,或者将乐谱保存到手机里,吉他入门者可以收藏起来慢慢看。
特色: 保持专注,提升效率。
这是一款简单易用的时间管理工具,利用番茄闹钟,针对不同的任务,设置不同的番茄时钟,每个任务持续时间是25分钟,背景音乐是下雨的白噪声,让你更专注。
特色: 保存复制过的文本记录。
每次复制粘贴后的文字只能使用一次,而且如果有多段文本需要复制,那么就把前一次复制的内容给替换了,这个小程序可以帮你把剪切记录保存起来,便于多次使用。
特色: 立下新一年目标去完成。
这是一个非常适合年初使用的工具,新的一年要立什么Flag,这个九宫格清晰地为我们划分好目标分类,每个月打开这份目标清单看一看,督促自己去完成目标。
特色: 让我们有目标地使用手机。
B站UP主何同学开发的壁纸,壁纸的样式和文字都可以修改,每当解锁手机时,你就会看到三句话:你为什么要打开手机?你要看多长时间?你还能去做什么。
最美尾巴:
在时钟里面。
1、打开手机,找到手机系统自带的时钟APP,点击进入时钟。
2、进入时钟后,可以看到页面下方有一个闹钟图标,点击闹钟。
3、点进闹钟后,如果想要自己设定闹钟的时间,就点击右上角的+号。
4、选择闹钟时间和铃声等,然后点存储。
5、点击存储之后,闹钟就设置好了。
import javautil;
import javaawt;
import javaapplet;
import javatext;
import javaawtevent;
public class Alarm extends Applet implements Runnable
{
Thread timer=null; //创建线程timer
Image gif1; //clockp:闹钟的外壳,闹铃和报时物
boolean setflag=false,stopflag=false,cancelflag=false;
Panel setpanel;
//获取声音文件
AudioClip ring=getAudioClip(getCodeBase(), "1mid");
Button setbutton=new Button("SET");
Button cancelbutton=new Button("CANCEL");
Button stopbutton=new Button("STOP");
//响应按钮事件
private ActionListener setli=new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
setflag=true;
}
};
private ActionListener cancelli=new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
setflag=true;
}
};
private ActionListener stopli=new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
ringstop();
//清除的方法
//gclearRect(83,280,20,30);
}
};
Label note1=new Label("Alarm clock:");
//GregorianCalendar提供的是一个日历式的东东,上面又多了很多的参数,是方便 *** 作了不少。而Date类的功能远不及其,求个和日期有联系的还要自己计算。
GregorianCalendar cal=new GregorianCalendar();
GregorianCalendar cal2=new GregorianCalendar();
SimpleDateFormat df=new SimpleDateFormat("yyyy MM dd HH:mm:ss");//设置时间格式
Date dummy=new Date(); //生成Data对象
String lastdate=dfformat(dummy);
Font F=new Font("TimesRoman",FontPLAIN,14);//设置字体格式
Date dat=null;
Date timeNow;
Color fgcol=Colorblue;
Color fgcol2=ColordarkGray;
Color backcolor=Colorblue;
Label hlabel2,mlabel2,slabel2;//显示时间单位时所用的标签(时、分、秒)
int i;
int s,m,h;
TextField sethour,setmin,setsec;//显示当前时间文本框和定时文本框
//在Applet程序中,首先自动调用初始化完成必要的初始化工作,紧接着自动调用start,在进入执行程序和返回到该页面时被调用,而从该页面转到别的页面时,stop被调用,关闭浏览器时,执行destroy。
public void init()//初始化方法
{
int fieldx=50,fieldy1=120,fieldy2=220,fieldw=30,fieldh=20,space=50;//显示时间和定时文本框的定位参数
setLayout(null); //将布局管理器初始化为null
setpanel=new Panel();
setpanelsetLayout(null);
setpaneladd(note1);
note1setBounds(30,100,60,20);
note1setBackground(backcolor);
note1setForeground(Colorblack);
//定时用的文本框(时、分、秒)
sethour=new TextField("00",5);
setmin=new TextField("00",5);
setsec=new TextField("00",5);
hlabel2=new Label();
mlabel2=new Label();
slabel2=new Label();
//定时的小时文本框的位置、大小
setpaneladd(sethour);
sethoursetBounds(fieldx,fieldy2,fieldw,fieldh);
sethoursetBackground(Colorwhite);
//在文本框后加入单位“时”
setpaneladd(hlabel2);
hlabel2setText("h");
hlabel2setBackground(backcolor);
hlabel2setForeground(Colorblack);
hlabel2setBounds(fieldx+fieldw+3,fieldy2,14,20);
fieldx=fieldx+space;
//定时的分钟文本框的位置、大小
setpaneladd(setmin);
setminsetBounds(fieldx,fieldy2,fieldw,fieldh);
setminsetBackground(Colorwhite);
//在文本框后加入单位“分”
setpaneladd(mlabel2);
mlabel2setText("m");
mlabel2setBackground(backcolor);
mlabel2setForeground(Colorblack);
mlabel2setBounds(fieldx+fieldw+3,fieldy2,14,20);
fieldx=fieldx+space;
//定时的秒文本框的位置、大小
setpaneladd(setsec);
setsecsetBounds(fieldx,fieldy2,fieldw,fieldh);
setsecsetBackground(Colorwhite);
//在文本框后加入单位“秒”
setpaneladd(slabel2);
slabel2setText("s");
slabel2setBackground(backcolor);
slabel2setForeground(Colorblack);
slabel2setBounds(fieldx+fieldw+3,fieldy2,14,20);
//设置闹钟控制按钮(on,off)
setpaneladd(cancelbutton);
setpaneladd(setbutton);
setpaneladd(stopbutton);
cancelbuttonsetBounds(90,180,40,20);
setbuttonsetBounds(140,180,40,20);
stopbuttonsetBounds(522,180,40,20);
setbuttonaddActionListener(setli);
cancelbuttonaddActionListener(cancelli);
stopbuttonaddActionListener(stopli);
stopbuttonsetVisible(false);
//将面板加入当前容器中,并设置面板的大小和背景色
add(setpanel);
setpanelsetBounds(300,1,250,420);
setpanelsetBackground(backcolor);
/int xcenter,ycenter,s,m,h;
//闹钟中心点所在位置
xcenter=145;
ycenter=162;
s=(int)calget(CalendarSECOND);
m=(int)calget(CalendarMINUTE);
h=(int)calget(CalendarHOUR_OF_DAY);
//初始化指针位置
lastxs=(int)(Mathcos(s314f/30-314f/2)30+xcenter);
lastys=(int)(Mathsin(s314f/30-314f/2)30+ycenter);
lastxm=(int)(Mathcos(m314f/30-314f/2)25+xcenter);
lastym=(int)(Mathsin(m314f/30-314f/2)25+ycenter);
lastxh=(int)(Mathcos((h30+m/2)314f/180-314f/2)18+xcenter);
lastyh=(int)(Mathsin((h30+m/2)314f/180-314f/2)18+ycenter);
lasts=s; /
MediaTracker mt=new MediaTracker(this);//为给定组件创建一个跟踪媒体的MediaTracker对象,把添加到被跟踪的组
//Java允SappletHTML所在的位置(decument base)下dY料,也允Sapplet钠涑淌酱a所在的位置(code base)下dY料。藉由呼叫getDocumentBase()cgotCodeBase()可得到URL物件。@些函湍阏业侥阆胂螺d的n案的位置
//clockp=getImage(getDocumentBase(),"11png");
gif1=getImage(getCodeBase(),"2gif");
//i为id号
mtaddImage(gif1,i++);
try
{
mtwaitForAll();
}
catch(InterruptedException e)
{};//等待加载结束
resize(600,420);//设置窗口大小
}
//窗口显示有改变的时候调用paint
public void paint(Graphics g)
{//重写paint()方法
int xh,yh,xm,ym,xs,ys,strike_times;
int xcenter,ycenter;
String today;
xcenter=148;
ycenter=186;
dat=new Date();
//用当前时间初始化日历时间
calsetTime(dat);
//读取当前时间
s=(int)calget(CalendarSECOND);
m=(int)calget(CalendarMINUTE);
h=(int)calget(CalendarHOUR_OF_DAY);
//换一种时间表达形式
today=dfformat(dat);
//指针位置
xs=(int)(Mathcos(s314f/30-314f/2)30+xcenter);
ys=(int)(Mathsin(s314f/30-314f/2)30+ycenter);
xm=(int)(Mathcos(m314f/30-314f/2)25+xcenter);
ym=(int)(Mathsin(m314f/30-314f/2)25+ycenter);
xh=(int)(Mathcos((h30+m/2)314f/180-314f/2)12+xcenter);
yh=(int)(Mathsin((h30+m/2)314f/180-314f/2)12+ycenter);
//设置字体和颜色
gsetFont(F);
//前景色
gsetColor(getBackground()); //取背景色的
gdrawImage(gif1,75,110,this);
//以数字方式显示年、月、日和时间
gdrawString(today,55,415);
//画指针
gdrawLine(xcenter,ycenter,xs,ys);
gdrawLine(xcenter,ycenter-1,xm,ym); //(x1,y1,x2,y2)
gdrawLine(xcenter-1,ycenter,xm,ym);
gdrawLine(xcenter,ycenter-1,xh,yh);
gdrawLine(xcenter-1,ycenter,xh,yh);
int timedelta;//记录当前时间与闹铃定时的时差
Integer currh,currm,currs;//分别记录当前的时、分、秒
Date dat2=new Date();
cal2setTime(dat2);
//读取当前时间
currh=(int)cal2get(CalendarSECOND);
currm=(int)cal2get(CalendarMINUTE);
currs=(int)cal2get(CalendarHOUR_OF_DAY);
//这样做的话说我API已过时
//timeNow=new Date();
//currh=new Integer(timeNowgetHours());
//currm=new Integer(timeNowgetMinutes());
//currs=new Integer(timeNowgetSeconds());
if(setflag)
{ //判断是否设置了闹钟
//判断当前时间是否为闹钟所定的时间
if((currhintValue()==IntegervalueOf(sethourgetText())intValue())&&(currmintValue()==IntegervalueOf(setmingetText())intValue())&&(currsintValue()==IntegervalueOf(setsecgetText())intValue()))
{
ringplay();
gdrawImage(gif1,83,280,this);
stopbuttonsetVisible(true);
}
timedelta=currmintValue()60+currsintValue()-IntegervalueOf(setmingetText())intValue()60-IntegervalueOf(setsecgetText())intValue();
if((timedelta>=30))
{
//若当前时间与闹钟相差时间超过30秒,闹钟自动停
ringstop();
//清除的方法
gclearRect(83,280,20,30);
}
}
dat=null;
}
public void start()
{
if(timer==null)
{
timer=new Thread(this);//将timer实例化
timerstart();
}
}
public void stop()
{
timer=null;
}
//给创建线程后start之后自动执行的函数
public void run()
{
//在run()方法中,调用repaint()方法,以重绘小程序区,进行时钟显示的更新。接着调用sleep方法让当前线程(也就是我们创建的线程clockthread)睡眠1000毫秒,因为我们每秒钟要更新一下显示,所以让它睡眠1秒
while(timer!=null)
{
try
{
timersleep(1000);
}
catch(InterruptedException e)
{}
//调用repaint时,会首先清除掉paint方法之前的画的内容,再调用paint方法
repaint();//刷新画面
}
timer=null;
}
//当AWT接收到一个applet的重绘请求时,它就调用applet的 update(),默认地,update() 清除applet的背景,然后调用 paint()。重载 update(),将以前在paint()中的绘图代码包含在update()中,从而避免每次重绘时将整个区域清除
//有两种方法可以明显地减弱闪烁:重载 update()或使用双缓冲。
//使用双缓冲技术:另一种减小帧之间闪烁的方法是使用双缓冲,它在许多动画Applet中被使用。其主要原理是创建一个后台图像,将需要绘制的一帧画入图像,然后调用DrawImage()将整个图像一次画到屏幕上去;好处是大部分绘制是离屏的,将离屏图像一次绘至屏幕上比直接在屏幕上绘制要有效得多,大大提高做图的性能。
// 双缓冲可以使动画平滑,但有一个缺点,要分配一张后台图像,如果图像相当大,这将需要很大一块内存;当你使用双缓冲技术时,应重载 update()。
public void update(Graphics g)
{
Image offscreen_buf=null;
//采用双缓冲技术的update()方法
if(offscreen_buf==null)
offscreen_buf=createImage(600,420);
Graphics offg=offscreen_bufgetGraphics();
offgclipRect(1,1,599,419);
paint(offg);
Graphics ong=getGraphics();
ongclipRect(1,1,599,419);
ongdrawImage(offscreen_buf,0,0,this);
}
/ Creates a new instance of AlarmClock /
}
以上就是关于10个赞不绝口的微信小程序,每一个都暗藏惊喜,请你低调使用全部的内容,包括:10个赞不绝口的微信小程序,每一个都暗藏惊喜,请你低调使用、苹果手机的闹钟在哪里、JAVA 闹钟程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)