有很多朋友问过我,easyx还不会插图片,放音乐,今天就给你们带来了,这些功能如何实现
达到这样的效果
你是否曾想过用编程来制作一个有背景、图片、文字、图形和音乐的程序?如果你觉得这个想法很有趣,那么你一定会对easyx库感兴趣。EasyX 是一个为 C/C++ 程序员提供的图形、图像和多媒体编程接口,让编程变得更加简单和有趣。
在本文中,我们将通过一个简单的示例程序来展示如何使用 easyx 实现背景、图片、文字、图形和音乐的集成。这个程序将会创建一个窗口,并在其中显示一张图片,添加一个黄色矩形,以及在矩形上方显示一段红色的文字,同时播放一段音乐。
首先,我们需要在代码中包含 easyx 和 mmsystem 的头文件。mmsystem 是 Windows 提供的多媒体设备接口,用于播放音乐。
接下来,我们定义了 BGM() 函数来打开和播放音乐。mciSendString() 函数用于发送字符串命令到多媒体控制台,这里我们使用 "open" 和 "play" 命令来打开和播放音乐文件。
在 main() 函数中,我们首先调用 initgraph() 函数来初始化图形窗口。然后,我们调用 BGM() 函数来播放音乐。接下来,我们定义了一个 IMAGE 类型的变量 picture,用于存储加载的图片。
使用 loadimage() 函数加载图片到 picture 变量中,然后使用 putimage() 函数将图片显示在窗口中。
接下来,我们使用 setfillcolor() 函数设置填充颜色为黄色,然后使用 solidrectangle() 函数绘制一个矩形。
接着,我们定义了一段欢迎文字,并使用 setbkmode() 函数设置文字背景透明。settextstyle() 函数用于设置字体和颜色,textwidth() 和 textheight() 函数分别用于获取文字的宽度和高度。然后,我们计算文字的水平和垂直位置,并使用 outtextxy() 函数将文字输出到窗口中。
最后,我们使用一个无限循环来保持程序运行。这个循环中没有任何操作,因此程序会一直运行直到被强制终止。
通过这个示例程序,我们可以看到使用 easyx 实现背景、图片、文字、图形和音乐的集成是非常简单的。如果你想深入学习 easyx 的更多功能,可以参考官方文档或相关教程。现在就来学习 easyx,让你的编程之旅更加有趣吧!
废话不多说,直接上源码!!!
#include<easyx.h>
#include<mmsystem.h>//包含多媒体设备接口头文件
#pragma comment(lib,"winmm.lib")//加载静态库
#define WIN_W 800
#define WIN_H 400
void BGM()
{
//打开音乐
mciSendString("open ./belive.mp3", 0, 0, 0);//mci:多媒体设备接口 send:发送 string:字符串
//播放音乐 repeat:重复播放
mciSendString("play ./belive.mp3", 0, 0, 0);
}
int main()
{
//创建窗口
initgraph(WIN_W,WIN_H);
//播放音乐
BGM();
//定义图片指针
IMAGE picture;
//加载并放置图片
loadimage(&picture, "bk.jpeg", WIN_W, WIN_H);
putimage(0, 0, &picture);
//添加矩形
setfillcolor(YELLOW);
solidrectangle(75, 50, (WIN_W - 75), 135);
//放置文字
char str[] = "欢迎光临";
setbkmode(TRANSPARENT); //文字背景透明
settextstyle(50, 0, "黑体"); //字体和颜色
int textx = textwidth(str) / 2; //文字宽度
int texty = textheight(str) / 2; //文字高度
int win_x = (WIN_W - 2 * 75) / 2; //格子宽度的一半
int win_y = (135-50) / 2; //格子高度的一半
settextcolor(RED);
outtextxy(75+ win_x - textx, 50+ win_y - texty, str);
while (1)
{
}
return 0;
}
代码中分模块介绍了,每个功能怎么实现