问题分类 [easyx]

提问
44 问题

0

价值

1

答案

55

浏览

复制代码到新文件中报错了

char s[10];

InputBox(s, 10, _T("请输入票数"));
sscanf_s(s, "%d", &num);

drawtext(s, &R6, DT_CENTER | DT_VCENTER | DT_SINGLELINE);


错误(活动) E0304 没有与参数列表匹配的 重载函数 "drawtext" 实例 


错误(活动) E0167 "char *" 类型的实参与 "LPTSTR" 类型的形参不兼容 

在原来的文件中是没有错误的

ava
雷雨阵阵

2020-8-30

0

价值

1

答案

69

浏览

easyx可以在CreateWindow创建出的窗口中绘图吗

如题,弄不太懂gdi绘图,想试试easyx。

ava
Billraozihan

2020-8-27

0

价值

1

答案

45

浏览

关于easyx的原点控制

我知道EasyX提供了setorigin()函数以用来设置绘制原点,但是没有getorigin()函数来记录当前原点

而这成为了我最近在使用Easyx写一个小型GUI库的时候很头疼的一个问题:要怎样来记录控件之间的层次结构?

比如母窗体下有一个GroupBox,GroupBox下有一个Button,Button的绝对坐标=Button相对于GroupBox的坐标+GroupBox相对于窗口左上角的坐标

如果有getorigin()的话,可以很轻松地在已有原点的基础上加上Button的相对坐标,然后调用Button.Draw(),这样Button绘

ava
无名氏

2020-8-26

0

价值

1

答案

94

浏览

line函数相关问题

使用line()函数画线条,能实现鼠标点击一次画一条线段,再点一次,刚刚画的线段消失的功能吗?

已实现点击鼠标后画出相应的线段,但是如何使线段消失呢?

ava
淡云か

2020-8-8

0

价值

1

答案

77

浏览

矩形绘图问题

我在窗口上打印了一个矩形我如何在矩形中间输出文字

#include<graphics.h>
#include<conio.h>
void menu()
{
	initgraph(1200, 700); //加载图形化窗
	rectangle(800,300,1200,320);
	while (1);
	closegraph();
}
int main()
{
	void menu();
	menu();
}

0

价值

1

答案

85

浏览

EasyX有没有什么画半透明图形的方法?

或者有没有获取屏幕缓存区首地址的方法?通过用户自定义的算法来产生类似于半透明的效果。我之前仿照手机CAPP的体系试着做了一些,自定义了一个屏幕缓存区,再用putpixel将屏幕缓存区的内容打到屏幕上。但这效率太低了,刷新一个640*480的屏幕需要将近一秒。所以有没有更方便快捷的方法?

这里是我的源码,其实有四个文件的我整合到一块了。

//这里开始是types.h

#ifndef types_h
#define types_h 1

typedef int int32;
typedef u
ava
C酱

2020-8-3

0

价值

1

答案

99

浏览

怎样实现只接受鼠标左右键单击消息

在学习制作一个扫雷小游戏,在鼠标消息代码这里,遇到了,只要拖动鼠标,程序就会自动运行一轮的问题。怎么能屏蔽鼠标移动带来的影响。换言之就是只接受鼠标点击左右键的消息,而屏蔽其他。谢谢各位大佬

//部分代码
int PlayGame()
{
	int r, c;
	MOUSEMSG msg = { 0 };
	while (1)
	{
		msg = GetMouseMsg();
		switch (msg.uMsg)
		{
		case WM_LBUTTONDOWN:
			r = msg.x / SIZ + 1;
ava
⭐️

2020-7-31

0

价值

1

答案

78

浏览

怎么把float类型变量用drawtext或者outtext输出?
float fare;
char a[20];
fare = 3.0;
sprintf_s(a, "%s", fare);
drawtext(a, &R4, DT_CENTER | DT_VCENTER | DT_SINGLELINE);

这样的输出结果是(NULL)

不知道哪里有问题

ava
雷雨阵阵

2020-7-29

0

价值

1

答案

70

浏览

InputBox的char*类型实参与LPTSTR类型的形参不兼容
#include <graphics.h>
#include <conio.h>
#include <stdio.h>

int main()
{
	// 初始化绘图窗口
	initgraph(640, 480);

	// 定义字符串缓冲区,并接收用户输入
	char s[10];
	InputBox(s, 10, _T("请输入半径"));

	// 将用户输入转换为数字
	int r;
	sscanf(s, "%d", &r);

	// 画圆
	circle(320, 240, 
ava
雷雨阵阵

2020-7-28

0

价值

2

答案

114

浏览

mciSendString放不了音乐

本人刚学用VS,用的VS2019,EasyX_20200520(beta)。程序如下,音乐MP3文件也放到.cpp所在文件夹了。

但是就是放不了音乐,调试时也没有跳过mciSendString函数,其余功能(创建窗口、退出)也正常。请问应该怎么改?

#include <graphics.h>
#include <conio.h>
#pragma comment(lib,"Winmm.lib")

int main()
{
	initgraph(640, 480);
	mciSen
ava
青青子衿

2020-7-24

0

价值

1

答案

101

浏览

WinAPI和easyx的连接调用问题

请问通过WinAPI   HWND hWnd = CreateWindow(...)创建的窗口,怎么通过easyx库包含函数在上面画图呢?尝试了一下好像只能通过initgraph()建立画图窗口吗?

0

价值

1

答案

99

浏览

服务程序出现为处理的异常

第一次做图形界面,用easyx,刚尝试了第一个函数就报错卡住了。相同的问题我也去网上搜过了,没有找到类似的报错原因,所以想来求助一下。

代码

#include <stdio.h>
#include <easyx.h>

int main()
{
	setlinecolor(BLUE);
	closegraph();

	return 0;
}

报错在第六行,异常描述:0x00F1545C 处(位于 test.exe 中)引发的异常: 0xC0000

ava
兔子

2020-7-11

0

价值

2

答案

168

浏览

ege19.01版本的easyx怎样贴图?

代码后面是vs2019的报错,我不知道问题在哪,搜了好几天也没找到解决办法,easyx是ege19.01版本的,用vs2019运行的。

initgraph(600, 500);

IMAGE img_bk;     E0070	不允许使用不完整的类型	

LoadImage(&img_bk, "开始界面.jpg");  E0167	"ege::IMAGE *" 类型的实参与 "HINSTANCE" 类型的形 
                                             参不兼容
ava
🌴

2020-6-10

0

价值

1

答案

192

浏览

<已解决> 在函数结尾用cleardevice后无法清屏 也贴不上其他图片

在我的play函数结尾用cleardevice函数后画面就卡住了,也贴不上其他图片覆盖

若是关闭play函数中的窗口 新写一个gameover函数重新开一个绘图窗口 在新的窗口里贴图就是一片黑 不运行play函数直接调用gameover函数图片就能正常贴上

怀疑是play函数里出了问题 但又不清楚具体原因 有考虑过会不会是链表没有清除的问题 但是周围人没有清除链表也没有出现这样的状况

play函数如下

void play(USER* user) {
	initgraph(10

0

价值

1

答案

155

浏览

在调试easyx程序中,无法进行全部中断;提示报错"未加载wntdll.pdb "

可以进行f10逐步调试,可以在断点停下,但是无法进行执行过程中直接中断.

已经查询该文件集存在.

f5过程中用使用"全部中断",无法进行中断,产生报错.设置断点可以进行中断.

该子函数

void player_out_test()
{
	int flag = 1; int t[20];
	//memset(t, 0, 20 * sizeof(int));
	while (true)
	{
		m = GetMouseMsg();
		putpixel(m.x, m.y, RE

0

价值

1

答案

162

浏览

关于图片转动问题

我在制作FlappyBird中,遇到实现小鸟转动时,用rotateimage旋转图片时,发现越来越黑了,最好变成的一团黑,由外到内,表示无法理解,请求帮助,或者有什么好的函数可以实现小鸟转动,谢谢。

ava
Dusk

2020-5-25

0

价值

1

答案

224

浏览

关于easyx有闪黑屏问题

用easyx,当图中有大量动画移动时,会时不时出现一些黑屏问题,用BeginBatchDraw函数是只能处理静态动画,也就是不会动的动画,处理不了图片等不断移动时造成黑屏现象的产生,求解!!!

(ps:用的掩码图和源码图的贴图技术)

ava
Dusk

2020-5-19

0

价值

1

答案

286

浏览

关于鼠标信息有延迟的问题

最近在做一个课设,在设计一个操作:当鼠标左键点击时,触发一次事件

但实际当左键点击一次时,会重复触发较多次该事件,特别是当左键一直处于按下状态时,事件会一直重复触发

所以我想请教一下,如何才能做到,当鼠标左键按下时,无论是否抬起,都只触发一次事件?

下面是我的代码:

while (1)
{
	BeginBatchDraw();

	putimage(0, 0, &game_background);

	while (MouseHit())
	{
		m = GetMo
ava
木辛

2020-5-3

-1

价值

1

答案

293

浏览

链表储存子弹信息出现异常, 其中IMAGE变量的访问出现了问题

求助大佬, 捕鱼游戏炮弹和大炮发射出了问题, 炮弹设成一个单一结构体的时候还能完美发射,后来想用链表达到连续多个炮弹发射的效果,但是链表好像出了问题, 没有报错只有异常, 具体异常如下:

第一个异常是在创建链表和插入节点时, 直接赋值初始化IMAGE成员变量会出问题:

(代码已删除)

把异常那两行和下面insertBulletNode函数的两行类似代码都改成直接loadimage()的形式就可以了. 但是又出现了第二个异常, 在旋转炮台函数里面:

ava
Orca

2020-5-1

0

价值

1

答案

249

浏览

函数loadimage问题
#include<graphics.h>
#include<iostream>
using namespace std;

IMAGE P01LD;
IMAGE P01LL;
IMAGE P01MD;
IMAGE P01ML;
IMAGE P01RD;
IMAGE P01RL;
int main() {
	initgraph(640, 480);
	loadimage(&P01LD, _T(“C:\\Program Files(x86)\\plane wars\\Imgs\\plane_
ava
……

2020-4-28