#include <conio.h>
#include <stdio.h>
#define NEO_hi_graphics_h_used
#include "neo.h"
#include <dos.h>
float a,b;
Init()
{
int i;
char *c[]={"Input quantity:", "Input interfior:", "count:"};
textbackground(0); /* 设置屏幕背景色 */
clrscr(); /* 清除文本屏幕 */
for(i=0; i<3; i++)
{
textbackground(i+1);
window(15+15*i, 10, 25+15*i, 13); /* 定义文本窗口 */
clrscr(); /* 清除窗口 */
cprintf("%s", c[i]);
textbackground(4);
window(45-15*i,14,55-15*i,15);
clrscr();
}
}
Lotquantity()
{
int i,m;
for(i=0;i<5;i++)
{
window(15,14,25,15);
clrscr();
gotoxy(1, 1); /*光标转移*/
if((scanf("%f",&a))==1&&a>0) /*要求输入的是数字且大于0*/
{
clrscr();
cprintf("%.3f",a);
break; /*满足条件就跳出进入下一次循环*/
}
else
{
clrscr();
cprintf("Invalid number");
for (m=1;m<100;m++) /*延时*/
delay(20);
fflush(stdin);
}
}
return 1;
}
Defectloss()
{
int i,m;
for(i=0;i<5;i++)
{
window(30,14,40,15);
clrscr();
gotoxy(1, 1); /*光标转移*/
if((scanf("%f",&b)==1)&&b>0&&a>b) /*要求输入的是数字且大于0小于a*/
{
clrscr();
cprintf("%f",b);
break; /*满足条件就跳出进入下一次循环*/
}
else
{
clrscr();
cprintf("Invalid number");
for (m=1;m<100;m++) /*延时*/
delay(20);
fflush(stdin);
}
}
return 1;
}
Count()
{
float d;
d=b/a*100; /*换算公式*/
window(45,14,55,15);
clrscr();
cprintf("%.2f%",d);
getch();
return 1;
}
main()
{
neo_init();
set_video_mode(640, 480, 8, 60, 0); /*进入640X480,8位图形模式*/
install_keyboard();
_install_timer(); /*安装NEO时钟中断程序,此时时钟中断触发频率为18次/秒*/
change_timer(120); /*修改时钟触发频率,用户可通过去掉注释设置成相应的值*/
install_mouse(); /*安装高级鼠标例程*/
show_bmp("clear.bmp", 300, 300);
_show_bmp("clear.bmp", 300, 300);
Init();
Lotquantity();
Defectloss();
Count();
getch();
return 0;
}
这个程序在加了红色段代码(实现鼠标驱动和位图显示)后发现原来的程序就运行不正常了。看不到原本的字符和几个矩形框。
大家可以先把红色代码去掉运行。再把红色代码段加上。发现鼠标是有了。可是。。。。
大家帮忙看看问题出在什么地方了。
[此贴子已经被作者于2006-10-24 19:16:38编辑过]