C++ 图形界面学习效果及代码

cpp 复制代码
#include <stdio.h>
#include<conio.h>
#include <stdlib.h> 
#include<graphics.h>
#define WIDTH 800
#define HEIGHT 480
#define SIZE 20
int main() {
	const char* str = "人生就是由欲望不满足而痛苦和满足之后无趣这两者所构成";
	const char* str1 = "每个人都没有绝对的道德底线,只是诱惑不够";
	IMAGE img,da;
	loadimage(&img, "gui.png"); 
	loadimage(&da, "da.gif");

	initgraph(WIDTH, 480);


	int i = 0;
	while (1) {
		setbkcolor(i++ * 10 % 0xffffff);
		clearcliprgn();
		putimage(70, 70, &img);
		putimage(170, 170, &img);
		//putimage(170, 0, &da);
		for (int i = 0; i <= WIDTH / SIZE; i++) {
			for (int j = 0; j <= HEIGHT / SIZE; j++) {				
				rectangle(i * SIZE, j * SIZE, SIZE, SIZE);
			}
		}		
		settextstyle(24, 0, "宋体"); // 设置字体大小和样式
		settextcolor(YELLOW);
		outtextxy(20, 20, str); // 在指定位置输出汉字

		settextstyle(24, 0, "黑体"); // 设置字体大小和样式
		settextcolor(RED);
		outtextxy(20, 80, str1); // 在指定位置输出汉字
				
		rectangle(18, 18, 20 + strlen(str) * 12, 44); // 绘制长方形

		getch();
		clearcliprgn();
	}
	
	return 0;
}
相关推荐
lisanmengmeng10 小时前
NRPE 添加命令(一)
linux·运维·服务器
Sweet锦10 小时前
不调 Python,不装向量库:我用纯 Java 写了一套以图搜图引擎
java·人工智能·开源·图搜索
如意猴11 小时前
【C++】007 C/C++ 内存管理机制、malloc与new的区别及模板初阶
java·c++·算法
树下水月11 小时前
Typora破解
linux·服务器·前端
可乐鸡翅yeah_11 小时前
HLS 分片过期清理,直播旧 TS 分片磁盘爆满问题处理
java·后端·spring·m3u8·m3u8在线·音视频在线播放
沫璃染墨12 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
专业程序开发源12 小时前
SSM校园拍摄交流服务平台36936-计算机课程设计、毕业设计
java·spring boot·后端·python·elasticsearch·php·课程设计
用户0942485680312 小时前
第23章:OpenJDK逃逸分析、标量替换与锁优化
java·jvm
wuminyu12 小时前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++
樱花落木兰12 小时前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存