本帖最后由 zzz19760225 于 2024-8-24 11:17 编辑
win10+vc6.0+easyx
Five66大侠的代码
#ifdef UNICODE
swprintf(str,111,L"三国演义-铁笼山%d.jpg",a);
#else
sprintf(str,"三国演义-铁笼山%d.jpg",a);
#endif
里面,三国演义-铁笼山%d.jpg=*%d.jpg
想把把文件名换成通用符,应对不同的批量文件。
编译通过,但是在图片区软件界面黑的,狂点鼠标也不见内容出来。不知道怎么肥事,求解- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- #include <windows.h>
- #include <graphics.h>
- #ifdef _MSC_VER
- #pragma warning(disable:4996)
- #endif
- int main (){
- #ifdef UNICODE
- wchar_t str[128]={0};
- #else
- char str[128]={0};
- #endif
- initgraph(1200, 700);
- int a = 0;
- a0:
-
- while (!kbhit()) {// 无限循环,直到用户按下ESC键
- MOUSEMSG msg = GetMouseMsg();// 鼠标状态
- if (msg.uMsg == WM_LBUTTONDOWN) {// 检查是否有鼠标点击
- a=a+1;
- goto a1;
- }
- if (msg.uMsg == WM_RBUTTONDOWN) {// 如果是右键点击
- a=a-1;
- goto a1;
- }
- a1:
- #ifdef UNICODE
- swprintf(str,111,L"*%d.jpg",a);
- #else
- sprintf(str,"*%d.jpg",a);
- #endif
- IMAGE img;
- loadimage(&img,str,1200,500);
- putimage(0, 0, &img);
-
- #ifdef UNICODE
- swprintf(str,111,L"*%d.txt",a);
- #else
- sprintf(str,"*%d.txt",a);
- #endif
-
- FILE *file = fopen(str, "r");// 打开并读取文本文件
- if (file) {
- char buffer[1024];
- int y = 600; // 假设图片下方开始显示文本,上下600位置写字
- char *line;
- while (fgets(buffer, sizeof(buffer), file)) {// 逐行读取文件内容并显示
- line = strdup(buffer); // 复制行以便修改
- outtextxy(20, y, line); // 显示文本,假设从(20, y)开始
- free(line); // 释放行内存
- y += 20; // 下一行的y坐标
- }
- fclose(file); // 关闭文件
-
- }
- goto a0;
- }
- Sleep(3300);
- cleardevice();
- goto a0;
-
- closegraph();
- return 0;
- }
复制代码
|