提问分类 [EasyX]

提问

0

价值

1

回答

170

浏览

图片赋值(拷贝)问题

我在EasyX库IMAGE类的基础上写了一个支持透明度相关操作的图片类,下面是实现将这个图片类输出到某绘图设备上的print()函数。其中,为什么pointer[n]和debug_ptr[n](声明在被注释的代码处)(n就是一个正整数)不一样,并且pointer[n]是0x00000000。望大佬解决。

void print() {
	if (isshow) {
		IMAGE buffer = image;
		//DWORD* pointer = GetImageBuffer(&buffer);
		//

0

价值

1

回答

179

浏览

EasyX处理鼠标事件(反应迟钝)

环境:VC2022+EasyX

类封装的按钮功能,希望能实现鼠标左键松开执行一次事件,用bool变量isLeftButtonUp判断是否重复执行(不然点一次鼠标会执行好多次,不知道有没有其他能够避免这种情况的写法)。

但在实际运行时,刚运行会迟钝很久(推测是消息缓冲区有大量鼠标移动信息),连续点击正常,但是点一次后移动一会鼠标再点一次也会进入好几秒的延迟。

想请教一下该如何修改:

①有其他能判断左键松开一次执行一次事件的写法吗?

②如何解决这个鼠标处理的延迟,实现响应及时的“鼠标左键松开执行一次事件&rdq

0

价值

1

回答

238

浏览

绘制一个半透明的星形,但是进行缩放变大变大操作时,会有两条线重复绘制导治半透明产生两条线是填充问题,有什么方法可以改进吗?

下面是问题代码:?




// EasyX 简单缓冲区半透明画点,让你的绘图支持任意的透明度,达到让大家推波推润的效果。
// 2023 - 4 - 7 
// 作者:葉澜郡
// QQ:2250395955
#define WINVER 0x0A00
#define _WIN32_WINNT 0x0A00
#include <stdio.h>
#include <conio.h>
#include <graphics.h>
#include <math.h>
#inc
ava
随波逐流

2023-6-1

0

价值

3

回答

458

浏览

如何在原框体中播放视频

现在用以下代码可以实现播放视频,但是会默认打开一个新的框体

如何直接在原框体播放这个视频呢?

希望能直接提供一份代码

#include<graphics.h>
#include<cstring>
#include<stdio.h>
#include<easyx.h>
#include <conio.h>
#include<windef.h>//EasyX 图像库头文件,用于绘图、鼠标操作、键盘操作等功能
#includ
ava
初霁

2023-3-22

0

价值

1

回答

493

浏览

如何实现透明图片的镜像翻转

此处给出的代码改自"详解透明贴图和三元光栅操作 - CodeBus"(https://codebus.cn/yangw/transparent-putimage)

在坐标轴方向为默认的(1,1)的情况下,透明图片可以正常输出

但我想通过坐标轴取反来输出水平翻转的图片,如代码中所示的那样,运行程序后却没有看到任何图像数据(坐标轴取反后透明图片无法正常输出)

0

价值

1

回答

459

浏览

发现 EasyX 20220901 的新 bug,关于未创建窗口时 SetWorkingImage(0) 的问题

问题描述

通常,在对某个 IMAGE 对象绘制时,我们会先保存旧的 WorkingImage,然后在 SetWorkingImage 到待绘制的 IMAGE 对象。

这样,我们就可以在对 IMAGE 对象绘制后,使用 SetWorkingImage 将绘制目标恢复到原先的状态。

这是很常见的做法。但是,如果在没有创建绘图窗口的情况下,上述操作就会出现问题。

触发 bug 的代码

#include <graphics.h
ava
huidong

2023-1-15

2

价值

1

回答

3639

浏览

win11 下 visual studio 运行 easyx 时无法使用控制台函数交互

正常情况下运行 easyx 时只会弹出 easyx 的图形窗口而不会弹出平时常出现的终端黑色窗口,但 win11 某次版本更新之后它会同时弹出这两个窗口,并且键盘交互只能在黑色的终端窗口中进行,没法对着 easyx 的图形窗口进行键盘交互,并且关闭黑色终端窗口的同时 easyx 的窗口也会随之关闭。

操作系统:Windows 11 家庭中文版,操作系统版本 22621.819

编译环境:Microsoft visual studio 2022 community,EasyX_20220901

以下代码是临时编写的,一个简单的提供键盘交互功能的 e

ava
氟拉基米尔

2022-11-25

0

价值

1

回答

471

浏览

小龙Dev-C++报错

小龙Dev-C++ 自带EasyX 报错 windows系统https://devcpp.gitee.io/manual/support-easyx.html

报错:

在此函数中: 'int main()':

12 2  [错误] 'getch' 未在此范围内声明

12 2  [注解] 建议替换为: 'gety'

#include &l
ava
vcxzgf

2022-11-2

0

价值

1

回答

549

浏览

easyx如何将多张图片播放成为视频

原本是想通过一个for循环将图片进行连续输出,然后通过延时来达到一个图片保留一段时间的效果,最后图片连续播放变成视频。

但是使用如下的函数时,图片根本就读取不了,现在就根本不知道下一步怎么办?求解答?

void image()
{
	//输出图片
	IMAGE img[60];					//定义一个(变量)对象;

	for(int i=1;i<59;i++)		//照片名字从1开始
	{
		//加载图片
		loadimage(&img[i], "./梅西 (i).png&q
ava
Time

2022-10-27

0

价值

1

回答

461

浏览

EasyX在dll中进行绘制保存图片问题,无法释放dll

操作环境:windwos10 & vs2017 & EasyX Library for C++ (Ver:20220116)

我希望可以在dll中进行绘制,我可以将点坐标传给参数,绘图与保存完全在dll中实现,然后通过接口去调用

在EasyX中,设备分两种,分别做了一种是默认的绘图窗口,另一种是IMAGE对象的测试

在同一台设备相同环境下,我将这段代码在dll导出程序export工程里以dll方式导出,在控制台应用工程load里进行调用时,可以成功执行绘图并保存,

但是执行完后却无法释放dll导致程序阻塞或者崩溃,我

ava
八至

2022-10-21

0

价值

2

回答

1401

浏览

键盘按键同时长按两个键时后按的键无效

我现在想做一个双人小游戏,我需要用awsd或者上下左右键控制两个人的行动,这样很大可能就会导致玩家长按上下左右键或者awsd键,然后现在出现了一个问题就是如果我两个人一起按键盘就会导致后按键盘那个动作无效,就是无法两个人同时长按键盘,我如果两边一起长按的话,只有一个会持续移动,但是如果此时我其中没有被移动的那个人重新按一下键盘,那么刚才持续移动那个会停止(实现过程就是下面的代码把printf换成我设计的人物移动代码,在这里只单独长按一个键可以正常移动)

但是我缩减代码的时候又遇到了个问题

下面是我缩减后的代码

我本来是打算弄一个,按W就显示w,按

ava
有毒

2022-9-12

0

价值

1

回答

641

浏览

请问绘图函数怎么封装进DLL

如果要将EasyX绘图函数封装进DLL,就必须要指定这些函数作用的父窗口

但是EasyX没有像Windows API那样通过传入窗口句柄实现绘图的函数

所以想问下有没有解决办法

#include <Windows.h>
#include <graphics.h>

#define DLL_API __declspec(dllexport)

DLL_API void FaceDraw1(bool f)
{
    setlinecolor(RGB(37, 75, 1
ava
System

2022-8-16

0

价值

1

回答

748

浏览

inputbox问题

编译环境是VScode+MinGW,GBK编码

想试一下inputbox,先直接复制了文档上的代码

#include <graphics.h>
#include <conio.h>

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

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

	// 将用户输入转换为数字
	int r = _w
ava
用户7b1f

2022-6-19

0

价值

1

回答

894

浏览

easyx的输入法交互

win7下的控制台输入法候选界面是直接输出在控制台窗口最后一行的,我想在一个easyx界面实现这个效果

即通过easyx api获取按键,然后将拼音发送给输入法的dll,获得候选列表并将其渲染在我的窗口上(不显示输入法窗口),这可以实现吗?

ava
无名氏

2022-1-22

2

价值

1

回答

973

浏览

关于结构体内数组元素过大引起的程序崩溃

大家好。

我的编译环境是VC++6.0

如下代码,如果代码正常运行,程序应该陷入无线循环。但他会崩溃,直接结束进程。如果把129501改成129500就没问题了。我想知道这个值的意义和原因。这样以后设计结构体时,才能更好地控制每个结构体内数组元素大小,不至于不小心超了,还一直找不到程序崩溃的原因。

# include <string>
using namespace std;

// 定义一个结构体
struct Node1
{
	double x[129501];	
};

ava
花毛茛

2022-1-12

0

价值

0

回答

925

浏览

VS 2019 使用 “在静态库中使用MFC” 报错,求解决方案!!!

VS 2019 无法使用“在静态库中使用MFC”,

我要生成 XP 应用,程序目前的设置已经参照这个了:VS 2019 生成 XP 应用

提示错误:

1>Sokoan.obj : error LNK2001: 无法解析的外部符号 __imp__CoInitialize@4
1>EasyXa.lib(EasyX.GdiPlus.obj) 
ava
Alan-CRL

2021-12-25

0

价值

1

回答

979

浏览

outtextxy 无法输出中文,不愿改字符集

outtextxy 无法输出中文,不愿改字符集

#include <stdio.h>

char name[10];
int main()
{
	for (int i = 0; i <sizeof(p->name); i++)
								{
									TCHAR x[10];
									_stprintf_s(x,_T("% c"),p->name[i]);
									outtextxy(100+30*i, 100 + l,x);
			
ava
叮当

2021-12-16

0

价值

2

回答

1765

浏览

Easyx如何实现图像定点旋转

请问一下Easyx是否能实现图像的定点旋转,rotateimage是以图像中心点为原点进行旋转,而我需要以图像底边中点为原点进行旋转,有无其它的函数可以实现定点旋转效果?

ava
夜瞳·Midnight

2021-12-10

0

价值

1

回答

1032

浏览

arc 画圆弧的问题

我修改了坐标系的Y轴方向,和原点的位置,这样和平时使用的二维坐标系相同,现在的问题是

我使用arc函数来绘图的时候,弧度似乎与我想的不同,我想在第1象限绘图,但是好像绘制到第4象限了?请问这是为何?

我的起始弧度设置的是30度(pi/6), 结束弧度设置的是90度(pi/2) 为什么结果不对呢?

include <graphics.h>
#include <conio.h>
#include <math.h>
int main()
{
	// 初始化绘图
ava
Sun

2021-10-25

技术讨论社区