本文目录一览:
angularjs关于日历待办事项,如何实现的
关于日历待办事项,可以通过云同步提醒的待办事项软件敬业签手机和电脑各版本的设置来实现,进行待办事项的及时提醒:
1.电脑版日历待办事项:
打开要设置提醒的待办事项,点击右侧的日历图标,设置提醒时间,可设置农历提醒、重复提醒,重要事项提醒等。
2.手机版日历待办事项:
打开手机敬业签里要设置待办事项的便签,点击右侧闹钟图标,设定提醒时间,可设置农历提醒、重复提醒,重要事项提醒以及指定wifi提醒等。
网上闹铃如何使用?
启动IE浏览器,在地址栏输入并回车,打开265上网导航首页,点击页面左上角的闹钟(红色字体)和当前时间链接,该链接显示的是标准的北京时间,闹钟以此作为基准,当鼠标移至当前时间链接上时将自动转换为当前农历日期。在弹出的“闹钟_报时_265闹钟”窗口中(如图),我们可以同时设置1至3个闹钟。点击任意一个闹钟标签,选中“开启闹钟”选项,点击闹钟时间下拉菜单设置目的时间(24小时制),接着选择闹铃类型,共有12种音乐可供选择,对于不同的闹钟可选择不同的铃声,这样凭听觉就可以辨别出对应闹钟了(电脑音箱或耳机必须处于使用状态)。在“提示文字”文本框中输入提示内容,到点时网页中将跳出一个对话框,给你视觉上的提示。在“重复设置”选项中,可以根据需要选择只闹一次或者在一周到一年的时间内重复使用闹钟,最后点击“设置闹钟”按钮完成设置。
提示:使用265网页闹钟时,必须保持在线状态并且已连接到265主页。
JAVA 闹钟程序
import java.util.*;
import java.awt.*;
import java.applet.*;
import java.text.*;
import java.awt.event.*;
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(), "1.mid");
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)
{
ring.stop();
//清除的方法
//g.clearRect(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=df.format(dummy);
Font F=new Font("TimesRoman",Font.PLAIN,14);//设置字体格式
Date dat=null;
Date timeNow;
Color fgcol=Color.blue;
Color fgcol2=Color.darkGray;
Color backcolor=Color.blue;
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();
setpanel.setLayout(null);
setpanel.add(note1);
note1.setBounds(30,100,60,20);
note1.setBackground(backcolor);
note1.setForeground(Color.black);
//定时用的文本框(时、分、秒)
sethour=new TextField("00",5);
setmin=new TextField("00",5);
setsec=new TextField("00",5);
hlabel2=new Label();
mlabel2=new Label();
slabel2=new Label();
//定时的小时文本框的位置、大小
setpanel.add(sethour);
sethour.setBounds(fieldx,fieldy2,fieldw,fieldh);
sethour.setBackground(Color.white);
//在文本框后加入单位“时”
setpanel.add(hlabel2);
hlabel2.setText("h");
hlabel2.setBackground(backcolor);
hlabel2.setForeground(Color.black);
hlabel2.setBounds(fieldx+fieldw+3,fieldy2,14,20);
fieldx=fieldx+space;
//定时的分钟文本框的位置、大小
setpanel.add(setmin);
setmin.setBounds(fieldx,fieldy2,fieldw,fieldh);
setmin.setBackground(Color.white);
//在文本框后加入单位“分”
setpanel.add(mlabel2);
mlabel2.setText("m");
mlabel2.setBackground(backcolor);
mlabel2.setForeground(Color.black);
mlabel2.setBounds(fieldx+fieldw+3,fieldy2,14,20);
fieldx=fieldx+space;
//定时的秒文本框的位置、大小
setpanel.add(setsec);
setsec.setBounds(fieldx,fieldy2,fieldw,fieldh);
setsec.setBackground(Color.white);
//在文本框后加入单位“秒”
setpanel.add(slabel2);
slabel2.setText("s");
slabel2.setBackground(backcolor);
slabel2.setForeground(Color.black);
slabel2.setBounds(fieldx+fieldw+3,fieldy2,14,20);
//设置闹钟控制按钮(on,off)
setpanel.add(cancelbutton);
setpanel.add(setbutton);
setpanel.add(stopbutton);
cancelbutton.setBounds(90,180,40,20);
setbutton.setBounds(140,180,40,20);
stopbutton.setBounds(522,180,40,20);
setbutton.addActionListener(setli);
cancelbutton.addActionListener(cancelli);
stopbutton.addActionListener(stopli);
stopbutton.setVisible(false);
//将面板加入当前容器中,并设置面板的大小和背景色
add(setpanel);
setpanel.setBounds(300,1,250,420);
setpanel.setBackground(backcolor);
/*int xcenter,ycenter,s,m,h;
//闹钟中心点所在位置
xcenter=145;
ycenter=162;
s=(int)cal.get(Calendar.SECOND);
m=(int)cal.get(Calendar.MINUTE);
h=(int)cal.get(Calendar.HOUR_OF_DAY);
//初始化指针位置
lastxs=(int)(Math.cos(s*3.14f/30-3.14f/2)*30+xcenter);
lastys=(int)(Math.sin(s*3.14f/30-3.14f/2)*30+ycenter);
lastxm=(int)(Math.cos(m*3.14f/30-3.14f/2)*25+xcenter);
lastym=(int)(Math.sin(m*3.14f/30-3.14f/2)*25+ycenter);
lastxh=(int)(Math.cos((h*30+m/2)*3.14f/180-3.14f/2)*18+xcenter);
lastyh=(int)(Math.sin((h*30+m/2)*3.14f/180-3.14f/2)*18+ycenter);
lasts=s; */
MediaTracker mt=new MediaTracker(this);//为给定组件创建一个跟踪媒体的MediaTracker对象,把图片添加到被跟踪的图片组
//Java允?Sapplet??HTML所在的位置(decument base)下?d?Y料,也允?Sapplet?钠涑淌酱a所在的位置(code base)下?d?Y料。藉由呼叫getDocumentBase()?cgotCodeBase()可得到URL物件。?@些函?????湍阏业侥阆胂螺d的?n案的位置
//clockp=getImage(getDocumentBase(),"11.png");
gif1=getImage(getCodeBase(),"2.gif");
//i为id号
mt.addImage(gif1,i++);
try
{
mt.waitForAll();
}
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();
//用当前时间初始化日历时间
cal.setTime(dat);
//读取当前时间
s=(int)cal.get(Calendar.SECOND);
m=(int)cal.get(Calendar.MINUTE);
h=(int)cal.get(Calendar.HOUR_OF_DAY);
//换一种时间表达形式
today=df.format(dat);
//指针位置
xs=(int)(Math.cos(s*3.14f/30-3.14f/2)*30+xcenter);
ys=(int)(Math.sin(s*3.14f/30-3.14f/2)*30+ycenter);
xm=(int)(Math.cos(m*3.14f/30-3.14f/2)*25+xcenter);
ym=(int)(Math.sin(m*3.14f/30-3.14f/2)*25+ycenter);
xh=(int)(Math.cos((h*30+m/2)*3.14f/180-3.14f/2)*12+xcenter);
yh=(int)(Math.sin((h*30+m/2)*3.14f/180-3.14f/2)*12+ycenter);
//设置字体和颜色
g.setFont(F);
//前景色
g.setColor(getBackground()); //取背景色的
g.drawImage(gif1,75,110,this);
//以数字方式显示年、月、日和时间
g.drawString(today,55,415);
//画指针
g.drawLine(xcenter,ycenter,xs,ys);
g.drawLine(xcenter,ycenter-1,xm,ym); //(x1,y1,x2,y2)
g.drawLine(xcenter-1,ycenter,xm,ym);
g.drawLine(xcenter,ycenter-1,xh,yh);
g.drawLine(xcenter-1,ycenter,xh,yh);
int timedelta;//记录当前时间与闹铃定时的时差
Integer currh,currm,currs;//分别记录当前的时、分、秒
Date dat2=new Date();
cal2.setTime(dat2);
//读取当前时间
currh=(int)cal2.get(Calendar.SECOND);
currm=(int)cal2.get(Calendar.MINUTE);
currs=(int)cal2.get(Calendar.HOUR_OF_DAY);
//这样做的话说我API已过时
//timeNow=new Date();
//currh=new Integer(timeNow.getHours());
//currm=new Integer(timeNow.getMinutes());
//currs=new Integer(timeNow.getSeconds());
if(setflag)
{ //判断是否设置了闹钟
//判断当前时间是否为闹钟所定的时间
if((currh.intValue()==Integer.valueOf(sethour.getText()).intValue())(currm.intValue()==Integer.valueOf(setmin.getText()).intValue())(currs.intValue()==Integer.valueOf(setsec.getText()).intValue()))
{
ring.play();
g.drawImage(gif1,83,280,this);
stopbutton.setVisible(true);
}
timedelta=currm.intValue()*60+currs.intValue()-Integer.valueOf(setmin.getText()).intValue()*60-Integer.valueOf(setsec.getText()).intValue();
if((timedelta=30))
{
//若当前时间与闹钟相差时间超过30秒,闹钟自动停
ring.stop();
//清除的方法
g.clearRect(83,280,20,30);
}
}
dat=null;
}
public void start()
{
if(timer==null)
{
timer=new Thread(this);//将timer实例化
timer.start();
}
}
public void stop()
{
timer=null;
}
//给创建线程后start之后自动执行的函数
public void run()
{
//在run()方法中,调用repaint()方法,以重绘小程序区,进行时钟显示的更新。接着调用sleep方法让当前线程(也就是我们创建的线程clockthread)睡眠1000毫秒,因为我们每秒钟要更新一下显示,所以让它睡眠1秒
while(timer!=null)
{
try
{
timer.sleep(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_buf.getGraphics();
offg.clipRect(1,1,599,419);
paint(offg);
Graphics ong=getGraphics();
ong.clipRect(1,1,599,419);
ong.drawImage(offscreen_buf,0,0,this);
}
/** Creates a new instance of AlarmClock */
}
我想知道怎么设置几天后的闹钟提醒?
1、点击手机应用中的“日历”。
2、点击左下角的“新建”。
3、输入闹钟提醒“名字”,选择提醒的“时间段”。
4、点击展开“更多”。
5、点击“一次性活动”。
6、确定自己设置的内容,点击右上角的“对号”。
7、设置过的那天下面都有“点”代表设置成功。
js显示剩下的时间
html
head
title/title
script type="text/javascript" language="javascript"
function getTime() {//js函数,定期执行的函数主体
var dateTime = new Date();//新建系统时间的对象
var hour = formatTime(dateTime.getHours());//获取小时并格式化,格式化函数formatTime(),下同
var minute = formatTime(dateTime.getMinutes());//获取分
var second = formatTime(dateTime.getSeconds());//获取秒
// var millisecond = dateTime.getMilliseconds();//获取毫秒
var code = "当前时间是:" + hour + ":" + minute + ":" + second;//+ " " + millisecond;//第一个div的内容(数字时钟)
var codeChinese = "当前时间是:" + formatChinese(hour) + "时" + formatChinese(minute) + "分" + formatChinese(second) + "秒";//第二个div的内容(中文时钟)
document.getElementById("divTime").innerHTML = code;//第一个div内容填充
document.getElementById("divTimeChinese").innerHTML = codeChinese;//第二个div内容填充
document.getElementById("monDigitalClock").innerHTML = makeMonCode(hour.toString() + ":" + minute.toString() + ":" + second.toString()) + blockEmpty();//+ makeMonCode(millisecond.toString());
updateLatestTime();//更新剩余时间
}
function formatTime(num) {//格式化数字,小于10时在数字前添加0
if (num 10) {
return "0" + num;
}
else {
return num;
}
}
function formatChinese(num) {//中文格式处理
var str = String(num);
if (str.length == 1) {//一位数的情况,直接返回中文
return formatSingleNumber(str);
}
else {//两位数的情况
var mid = "十";
var top = str.substr(0, 1);//第一位
var btn = str.substr(1, 2);//第二位
return (formatSingleNumber(top) + mid + formatSingleNumber(btn)).replace("零十", "零").replace("十零", "十").replace("零零", "零").replace("一十", "十");//使用formatSingleNumber函数转换成中文并将不符合中文数字表示方法的替换一下
}
}
function formatSingleNumber(num) {//单个数字转化成中文
return num.replace("1", "一").replace("2", "二").replace("3", "三").replace("4", "四").replace("5", "五").replace("6", "六").replace("7", "七").replace("8", "八").replace("9", "九").replace("0", "零");
}
setInterval("getTime();", 1000);//定时刷新,每毫秒刷新一次
//模拟时钟代码
function buidlPointArea(num) {//将数字对应的点阵拼接成图案
var code = "div class='singleNumber'";
for (var i = 1; i 6; i++) {
for (var j = 1; j 5; j++) {
code += createSinglePoint(i + "_" + j, num);
}
}
code += "/div";
return code;
}
function createSinglePoint(id, num) {//数字对应的黑点
var array0 = new Array("1_1", "1_2", "1_3", "2_1", "2_3", "3_1", "3_3", "4_1", "4_3", "5_1", "5_2", "5_3");//数字0的点阵,下同
var array1 = new Array("1_3", "2_3", "3_3", "4_3", "5_3");
var array2 = new Array("1_1", "1_2", "1_3", "2_3", "3_1", "3_2", "3_3", "4_1", "5_1", "5_2", "5_3");
var array3 = new Array("1_1", "1_2", "1_3", "2_3", "3_1", "3_2", "3_3", "4_3", "5_1", "5_2", "5_3");
var array4 = new Array("1_1", "1_3", "2_1", "2_3", "3_1", "3_2", "3_3", "4_3", "5_3");
var array5 = new Array("1_1", "1_2", "1_3", "2_1", "3_1", "3_2", "3_3", "4_3", "5_1", "5_2", "5_3");
var array6 = new Array("1_1", "1_2", "1_3", "2_1", "3_1", "3_2", "3_3", "4_1", "4_3", "5_1", "5_2", "5_3");
var array7 = new Array("1_1", "1_2", "1_3", "2_3", "3_3", "4_3", "5_3");
var array8 = new Array("1_1", "1_2", "1_3", "2_1", "2_3", "3_1", "3_2", "3_3", "4_1", "4_3", "5_1", "5_2", "5_3");
var array9 = new Array("1_1", "1_2", "1_3", "2_1", "2_3", "3_1", "3_2", "3_3", "4_3", "5_1", "5_2", "5_3");
var numArr = new Array();
numArr[0] = array0;
numArr[1] = array1;
numArr[2] = array2;
numArr[3] = array3;
numArr[4] = array4;
numArr[5] = array5;
numArr[6] = array6;
numArr[7] = array7;
numArr[8] = array8;
numArr[9] = array9;
var cls = "whitePoint";
for (var i = 0; i numArr[num].length; i++) {
if (id == numArr[num][i]) {
cls = "blackPoint";
}
}
return "div id='" + id + "' class='" + cls + "'/div";
}
function blockEmpty() {//空格代码
return "div class='singleNumber'/div";
}
function blockM() {//冒号的代码
var code = "";
code += "div class='singleNumber'div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='blackPoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='blackPoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div";
code += "div class='whitePoint'/div/div";
return code;
}
function makeMonCode(totalCode) {//生成模拟的数字时钟代码
var finalCode = "";
for (var i = 0; i totalCode.length; i++) {//每个字符分别转换
if (isNaN(totalCode[i])) {//非数字字符,例子中只有冒号
if (totalCode[i] == ":") {
finalCode += blockM();//冒号的代码,用blockM()函数生成
}
}
else {
finalCode += buidlPointArea(totalCode[i]);//数字的代码,用buildPointArea()函数生成
}
}
return finalCode;
}
function updateLatestTime() {//更新剩余时间
var setHour = document.getElementById("sltHour").value;//获取选择的小时值
var setMin = document.getElementById("sltMin").value;//获取选择的分值
var setSecond = document.getElementById("sltSecond").value;//获取选择的秒值
var time = new Date();//获取系统时间
var nowHour = time.getHours();//当前时间小时值
var nowMin = time.getMinutes();//当前时间分值
var nowSecond = time.getSeconds();//当前时间秒值
var viewHour = setHour - nowHour;//剩余小时
var viewMin = setMin - nowMin;//剩余分钟
var viewSecond = setSecond - nowSecond;//剩余秒
if (viewSecond 0) {//剩余秒小于0时,借位
viewSecond += 60;
viewMin -= 1;
}
if (viewMin 0) {//剩余分小于0时,借位
viewMin += 60;
viewHour -= 1;
}
if (viewHour 0) {//剩余小时小于0时,借位
viewHour += 24;
}
document.getElementById("divLatestTime").innerHTML = "剩余时间为:" + viewHour + "时" + viewMin + "分" + viewSecond + "秒";//填充
if (viewHour == 0 viewMin == 0 viewSecond == 0) {//到点提示
alert("到点了!");
}
}
function createSelect() {//生成选择框代码
var code = "";
code += "请选择闹钟时间:select id='sltHour' onchange='updateLatestTime()'";
for (var i = 1; i 25; i++) {
code += "option value='" + i + "'" + i + "/option";
}
code += "/select时";
code += "select id='sltMin' onchange='updateLatestTime()'";
for (var k = 1; k 61; k++) {
code += "option value='" + k + "'" + k + "/option";
}
code += "/select分";
code += "select id='sltSecond' onchange='updateLatestTime()'";
for (var j = 1; j 61; j++) {
code += "option value='" + j + "'" + j + "/option";
}
code += "/select秒";
document.getElementById("divAlert").innerHTML = code;
}
/script
style type="text/css"
body {
background-color: #FFFFFF;
}
.clsTime {
width: 600px;
height: 50px;
font-size: 30px;
margin-left: auto;
margin-right: auto;
margin-top: 100px;
}
.whitePoint {
width: 10px;
height: 10px;
background-color: #FFFFFF;
margin: 0px;
padding: 0px;
float: left;
}
.blackPoint {
width: 10px;
height: 10px;
background-color: #000000;
margin: 0px;
padding: 0px;
float: left;
}
.clsMonDigitalClock {
margin-left: auto;
margin-right: auto;
width: 480px;
height: 50px;
background-color: #FFFFFF;
}
.singleNumber {
width: 40px;
height: 50px;
float: left;
font-size: 8px;
}
.clsAlert {
width: 400px;
margin-top: 50px;
margin-left: auto;
margin-right: auto;
}
.clsLatestTime {
width: 400px;
margin-top: 50px;
margin-left: auto;
margin-right: auto;
}
/style
/head
body onload="createSelect();"
div id="divTime" class="clsTime"loading..../div
div id="divTimeChinese" class="clsTime"loading..../div
div id="monDigitalClock" class="clsMonDigitalClock"/div
div id="divAlert" class="clsAlert"/div
div id="divLatestTime" class="clsLatestTime"/div
/body
/html
之前做着玩的,有你说到的功能,有兴趣看看。代码存为html即可。