picture.c
来自「浙大《C语言设计基础课程设计》中的例程 有些比较好的代码!」· C语言 代码 · 共 88 行
C
88 行
#include "compute.h"
#define MSIZE 5 /* 鼠标图标大小 */
void far *imagep; /* 鼠标图形位图的全局指针变量 */
/**********************************************************
* 函数原型:void picture() *
* 传入参数:无 *
* 返 回 值:无 *
* 函数功能:绘制简单计算器的图形界面 *
**********************************************************/
void picture()
{
int i,j,k=0;
int a=150,b=105;
unsigned long gsize;
/*计算器按钮标签文本字符 */
char str[]={'1','2','3','-','/','4','5','6','*','S','7','8','9','%','C','\0'};
char temp[2]="";
/* 绘制鼠标图形 */
setcolor(RED);
rectangle(a-MSIZE,b-MSIZE,a+MSIZE,b+MSIZE);
line(a-MSIZE,b-MSIZE,a+MSIZE,b+MSIZE);
line(a-MSIZE,b+MSIZE,a+MSIZE,b-MSIZE);
/* 保存鼠标图形位图 */
gsize=imagesize(a-MSIZE,b-MSIZE,a+MSIZE,b+MSIZE);
imagep=malloc(gsize);
getimage(a-MSIZE,b-MSIZE,a+MSIZE,b+MSIZE,imagep);
cleardevice();
setbkcolor(LIGHTBLUE);
setfillstyle(SOLID_FILL,LIGHTGRAY);
bar3d(130,45,500,280,10,1); /* 计算器外框 */
setcolor(DARKGRAY);
line(150,60,150,90);
line(150,90,480,90);
setcolor(WHITE);
line(150,60,480,60);
line(480,60,480,90);
setfillstyle(SOLID_FILL,YELLOW);
bar(150,60,480,90); /* 绘制信息显示框 */
setfillstyle(SOLID_FILL,LIGHTGRAY);
for(i=0;i<5;i++) /* 绘制计算器按钮框 */
for(j=0;j<4;j++)
{
bar(a+i*70,b+j*45,a+50+i*70,b+30+j*45);
bottonup(a+i*70,b+j*45);
}
setcolor(YELLOW);
settextstyle(1,0,1);
/* 输出计算器使用说明等信息 */
outtextxy(130,298,"Press C To Open The Calculator.");
outtextxy(130,315,"Press S To Sqrt Number.");
outtextxy(130,332,"Left Press To Use The Calculator.");
outtextxy(130,349,"Right Press To Quit The Calculator.");
settextstyle(1,0,3);
setcolor(RED);
outtextxy(130,380,"Welcome To Use Caculator!");
settextstyle(2,0,5);
setcolor(WHITE);
outtextxy(280,420,"Made by Zhejiang University");
settextstyle(1,0,2);
setcolor(GREEN);
for(j=0;j<3;j++)
for(i=0;i<5;i++) /* 显示计算器前三排按钮标签 */
{
temp[0]=str[k++];
outtextxy(a+17+70*i,200-j*45,temp);
}
outtextxy(167,245,"0"); /* 显示计算器最后一排按钮标签 */
outtextxy(377,245,"+");
outtextxy(447,245,"=");
settextstyle(1,0,3);
outtextxy(310,235,".");
settextstyle(1,0,2);
outtextxy(228,243,"+");
outtextxy(237,246,"/");
outtextxy(246,250,"-");
setcolor(BLACK);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?