C 带指针样式的时钟

#include <stdio.h>
#include <malloc.h>
#include<graphics.h>
#include<conio.h>
#define LEN sizeof(struct student)
#include "math.h"
#define PI 3.1415926

void Draw(int hour, int minute, int second)
{
double a_hour, a_min, a_sec; // 时、分、秒针的弧度值
int x_hour, y_hour, x_min, y_min, x_sec, y_sec; // 时、分、秒针的末端位置
// 计算时、分、秒针的弧度值
a_sec = second * 2 * PI / 60;
a_min = minute * 2 * PI / 60 + a_sec / 60;
a_hour= hour * 2 * PI / 12 + a_min / 12;
// 计算时、分、秒针的末端位置
x_sec = 320 + (int)(120 * sin(a_sec));
y_sec = 240 - (int)(120 * cos(a_sec));
x_min = 320 + (int)(100 * sin(a_min));
y_min = 240 - (int)(100 * cos(a_min));
x_hour= 320 + (int)(70 * sin(a_hour));
y_hour= 240 - (int)(70 * cos(a_hour));
// 画时针
setlinestyle(PS_SOLID, NULL,NULL, 10);
setcolor(WHITE);
line(320, 240, x_hour, y_hour);
// 画分针
setlinestyle(PS_SOLID,1, NULL, 6);
setcolor(LIGHTGRAY);
line(320, 240, x_min, y_min);
// 画秒针
setlinestyle(PS_SOLID,1, NULL, 2);
setcolor(RED);
line(320, 240, x_sec, y_sec);
}

void main()
{

initgraph(640, 480); // 初始化 640 x 480 的绘图窗口
// 绘制一个简单的表盘
//solidcircle(20, 40, 0xff);
circle(320, 240, 2);
circle(320, 240, 60);
circle(320, 240, 160);
//fillcircle (240, 320, BLUE);
outtextxy(296, 300, "LAOLISHI");
// 设置 XOR 绘图模式
setwritemode(R2_XORPEN); // 设置 XOR 绘图模式
// 绘制表针
SYSTEMTIME ti; // 定义变量保存当前时间
while(!kbhit()) // 按任意键退出钟表程序
{
GetLocalTime(&ti); // 获取当前时间
printf("%d%d%d",ti.wHour, ti.wMinute, ti.wSecond);
Draw(ti.wHour, ti.wMinute, ti.wSecond); // 画表针
Sleep(1000); // 延时 1 秒
printf("%d%d%d",ti.wHour, ti.wMinute, ti.wSecond);
Draw(ti.wHour, ti.wMinute, ti.wSecond); // 擦表针(擦表针和画表针的过程是一样的)

}
closegraph(); // 关闭绘图窗口
}

时间: 2024-11-06 02:44:53

C 带指针样式的时钟的相关文章

css Cursor:url()自定义鼠标指针样式为图片

css自定义鼠标指针样式为图片Cursor:url()的使用,今天在项目中,要用到自定义鼠标样式,格式: css:{cursor:url('绝对路径的图片(格式:cur,ico)'),-moz-zoom-out;}//FF下面 css:{cursor:url('绝对路径'),auto;}//IE,FF,chrome浏览器都可以 前面url是自定义鼠标格式,图像的绝对路径地址,后面的参数是css标准的cursor样式,(IE下面可以不需要) 图标的格式根据不同的浏览器来分:IE支持cur,ani,

修改鼠标指针样式

在编写html时,有时我们需要修改鼠标指针的样式,比较形象的有qq农场的指针样式,如果我们自定义也可以实现该效果.大家可以通过修改css样式cursor来实现. cursor取值: auto : 默认值.浏览器根据当前情况自动确定鼠标光标类型. all-scroll : IE6.0 有上下左右四个箭头,中间有一个圆点的光标.用于标示页面可以向上下左右任何方向滚动. col-resize : IE6.0 有左右两个箭头,中间由竖线分隔开的光标.用于标示项目或标题栏可以被水平改变尺寸. crossh

android 自带主题样式(theme )

android:theme="@android:style/Theme.Dialog" 将一个Activity显示为能话框模式 android:theme="@android:style/Theme.NoTitleBar" 不显示应用程序标题栏 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 不显示应用程序标题栏,并全屏 android:theme="Theme.Li

电脑鼠标指针样式更改

电脑鼠标指针样式更改 前言: 今天在办公室,看到坐在隔壁的吴老师的电脑,发现她的桌面的鼠标指针是动态的, 不像平时看到的呆呆的那种鼠标指针,出于好奇,易安就偷了她的电脑嘿嘿嘿~ 爱美之心人皆有之,其实大多数人都会的啦,但是写出来给一些不会的人看吧,别忘了关注我吖 步骤: 一.    下载好指针文件,易安已经帮你下好款比较美观的鼠标指针文件啦~(需要的可以关注公众号获取哦) 二.    复制文件(也可以复制文件夹哦) 三.    打开我们的系统盘(一般都是C盘啦~) 我的系统盘是C盘,所以这里打开

WPF 重写微调自带的样式,ListView、DataGrid、TreeView等所有控件的默认样式

原文:WPF 重写微调自带的样式,ListView.DataGrid.TreeView等所有控件的默认样式 不知道各位在开发中有没有遇到这样的窘迫,开发一个UI,设计给出的效果图和自带的样式的区别很大,然后有的样式通过属性是修改不了的,比如TreeView的子项TreeViewItem,想完全透明背景色就做不到,只有重写Template,然而重写了模板发现很多默认的功能失效了,等等一些列问题:又比如需要重新DataGrid,的DataGridRowHeader模板,又不知这个模板哪些属性必须要给

CSS自定义鼠标指针样式

原文链接: http://davidwalsh.name/css-custom-cursorDemo地址: http://davidwalsh.name/demo/css-custom-cursor.php原文日期: 2014-09-16翻译日期: 2014-09-17翻译人员: 铁锚 还记得Web 1.0时代的那些苦逼岁月吗? 你想尽一切办法来优化你的网站. 还要饱受IE6惨无人道的虐待,举个栗子, IE中那些害死人不偿命的滚动条, 我一直记得第三方类库 CometCursor. CometC

Qt仿Android带特效的数字时钟源码分析(滑动,翻页,旋转效果)

这个数字时钟的源码可以在Qt Demo中找到,风格是仿Android的,不过该Demo中含有三种动画效果(鉴于本人未曾用过Android的系统,因此不知道Android的数字时钟是否也含有这三种效果),其分别为滑动.翻页和旋转. 由于本人的Qt Creator输入中文后显示的都是乱码,因而在此只能使用英文进行注释,后期如果有时间再进行中文的相关整理.可能有些地方理解并不是很正确.希望大家多多指正! 以下为源码: [cpp] view plaincopy #include <QtCore> #i

带指针的结构体

结构体如下: struct PngBuffer {  int pngSize;  void* pngData;} 如果在代码中简单的声明一个局部变量 PngBuffer PngBf; 就使用它的话会提示:uninitialized local variable 'PngBf' used.所以正确的声明是 HeyHaPngBuffer PngBf;PngBf.pngData = malloc(PNGData.Num());PngBf.pngSize = PNGData.Num(); 必须要为结构体

带分页样式的thinkphp数据查询

php查询文件代码: html视图代码: 分页的css样式代码: 显示效果如下: 原文地址:https://www.cnblogs.com/lxc-bky/p/9870644.html