如何通过鼠标绘制迷宫C++
时间: 2024-01-22 21:18:24 浏览: 30
以下是一个简单的 C++ 程序,可以让你通过鼠标绘制迷宫:
```cpp
#include <iostream>
#include <graphics.h>
int main()
{
initwindow(800, 600, "Mouse Maze");
// 创建一个二维数组来保存迷宫
int maze[400][300] = {0};
// 不断循环,直到用户按下 ESC 键退出程序
while (!kbhit() || getch() != 27)
{
// 获取鼠标的位置
int x = mousex();
int y = mousey();
// 如果鼠标左键被按下,将鼠标所在位置的格子标记为障碍
if (ismouseclick(WM_LBUTTONDOWN))
{
int i = x / 2;
int j = y / 2;
maze[i][j] = 1;
setfillstyle(SOLID_FILL, WHITE);
bar(i * 2, j * 2, i * 2 + 2, j * 2 + 2);
}
// 如果鼠标右键被按下,将鼠标所在位置的格子标记为通路
if (ismouseclick(WM_RBUTTONDOWN))
{
int i = x / 2;
int j = y / 2;
maze[i][j] = 0;
setfillstyle(SOLID_FILL, BLACK);
bar(i * 2, j * 2, i * 2 + 2, j * 2 + 2);
}
// 处理鼠标点击事件
clearmouseclick(WM_LBUTTONDOWN);
clearmouseclick(WM_RBUTTONDOWN);
}
closegraph();
return 0;
}
```
这个程序使用了 `graphics.h` 库,需要在编译时链接 `graphics.lib` 库。你可以使用 Dev-C++、Code::Blocks 等集成开发环境来编译运行此程序。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)