教务管理系统,管理员、教师、学生统一登录界面,登录后展现各自的功能块。
说实话这个要求很奇葩,用C语言实现,但却需要设计界面,而且界面要求是用EasyX,一个将 Turbo C 时代的图形库提供的函数重新用Windows API包装一遍的库,主要方便学生用C语言练习图形界面设计,但这完全不适合拿来做按钮、列表框这些东西啊。为此我只好将 EasyX 继续做一层简单的封装,实现一个叫 Box 的概念, Box 就是一个矩形区域,它有底色,有边框,有文字,有文字的对齐、密码属性等等,再在 Box 的基础上实现按钮、封装一个鼠标事件去管理 Box 列表,获取被命中的 Box ,将 Box 用列表管理起来实现列表控件,折腾半天终于做了一个简陋的 EasyX 二次封装函数库。然后再用二次封装库实现程序要求的功能。
链接: https://pan.baidu.com/s/16WTqIQLiGepnyEXBTZewaA
提取码: 1234
EasyX是一套基于C语言的图形界面库,能够快速地、轻松地绘制图形界面。和Windows图形界面通常使用的MFC和Win32不同,EasyX更加适用于初学者,因为它提供了简单易懂的API函数,并且易于学习和使用。EasyX的特点是写代码少、效果好,绘制出来的图形漂亮、精美,不需要太多的CSS样式和HTML标签就能制作出好看的界面。因此,EasyX已经成为了很多程序员在学习和开发C语言程序时的首选。你的draw函数有问题,检查一下 x y 的值是否在 640*480的范围内,现在看是y的值好像一直是0,x的值也太小。
我用 putpixel(rand()%640, rand()%320, Color[p%MAXCOLOR])
代替你的那句,屏幕上有输出。
下面的draw函数在屏幕中心画一个半径为100的圆
void draw(){
int p=0
float k
int e
float pi = 3.14
//cin>>e
e = 100
BeginBatchDraw()
for (k = 0.0 k <= (2.0*pi) k += 0.01)
{
x = 320 + e*cos(k)
y = 240 + e*sin(k)
putpixel((int) x, (int) y, Color[p%MAXCOLOR])
p++
}
EndBatchDraw()
}
注意,cin这类输入输出在图形模式下是没有回显的。
运行效果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)