资源简介
linux minigui时钟程序 我已经测试过 没有问题
代码片段和文件信息
//************************* **begin of -- include ******************************
#include
#include
#include
#include
#include
#include
#include
#include
//************************* **end of -- include ******************************
#define TIMER_SECOND 100
#define TIMER_MINUTE 101
#define TIMER_HOUR 102
#define PI 3.14159
#define GI_CREATELOGFONT( charset fontname fontsize ) \
CreateLogFont (FONT_TYPE_NAME_SCALE_TTF \
fontname charset \
FONT_WEIGHT_BOLD FONT_SLANT_ROMAN \
FONT_SPACING_CHARCELLFONT_OTHER_AUTOSCALE \
FONT_UNDERLINE_NONE FONT_STRUCKOUT_NONE \
fontsize 0);
typedef struct {
int cenc_x cenc_y;
int radii radii_;
int value_h value_m value_s;
double x y x_ y_;
double hour_x hour_y;
double min_x min_y;
double sec_x sec_y;
double sec_len min_len hour_len;
}mp_clock_param;
mp_clock_param cencer;
/*******************************************************************************
* desc:
*------------------------------------------------------------------------------
* param: none
*------------------------------------------------------------------------------
* return:
*******************************************************************************/
int mb_clock_scale_coor(int value)
{
cencer.x = cencer.cenc_x + cencer.radii*sin(value*6*PI/180);
cencer.y = cencer.cenc_y - cencer.radii*cos(value*6*PI/180);
cencer.x_ = cencer.cenc_x + cencer.radii_*sin(value*6*PI/180);
cencer.y_ = cencer.cenc_y - cencer.radii_*cos(value*6*PI/180);
return 0;
}
/*******************************************************************************
* desc: second hand of clock proc
*------------------------------------------------------------------------------
* param: none
*------------------------------------------------------------------------------
* return:
*******************************************************************************/
int mb_clock_hand(void)
{
int minute;
minute = cencer.value_m/12;
cencer.sec_x = cencer.cenc_x + cencer.sec_len*sin(cencer.value_s*6*PI/180);
cencer.sec_y = cencer.cenc_y - cencer.sec_len*cos(cencer.value_s*6*PI/180);
cencer.min_x = cencer.cenc_x + cencer.min_len*sin(cencer.value_m*6*PI/180);
cencer.min_y = cencer.cenc_y - cencer.min_len*cos(cencer.value_m*6*PI/180);
// now hour hand coordinate
switch(minute) {
case 1:
case 2:
case 3:
case 4:
cencer.hour_x = cencer.cenc_x + cencer.hour_len*sin((cencer.value_h*30+minute*6)*PI/180);
- 上一篇:Linux命令速查手册.CHM
- 下一篇:汇编写的烟花模拟效果
相关资源
- uboot到linux logo显示不间断 补丁
- UNIX/LINUX编程实践教程的源码
- 嵌入式图形界面MiniGUI的示例程序9例
- Linux任务管理器
- linux应用层的华容道游戏源代码
- ubuntu9.10 可加载内核模块和字符设备驱
- MP3文件ID3v2ID3v2APEv2标签读取
- 操作系统实验——虚存管理实验
- linux下的发包工具sendip
- 尚观培训linux许巍关于c 的笔记和讲义
- 尚观培训linux董亮老师关于数据结构的
- linux 线程池源码 c 版
- linux C 电梯程序练习
- linux下用多进程同步方法解决生产者
- (MFC) 时钟日期程序
- Linux 操作系统实验(全)
- Linux From Scratch 中文手册
- linux 网络实验 ftp程序
- Linux命令大全离线版&在线版
- 操作系统共享内存实验
- dos 下运行Linux 命令--gnu_utils
- linux 0.12内核源代码
- linux简易shell C实现
- linux实验报告及心得体会
- 基于GTK的Linux环境下的简易任务管理器
- linux扫雷游戏代码
- CAN Linux驱动代码
- Linux系统教材
- intel 82579LM 网卡驱动Linux系统版 v1.9.
- SA1110处理器掌上电脑液晶显示器设计
评论
共有 条评论