0
价值
1
回答
浏览
我在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
回答
浏览

环境:VC2022+EasyX
类封装的按钮功能,希望能实现鼠标左键松开执行一次事件,用bool变量isLeftButtonUp判断是否重复执行(不然点一次鼠标会执行好多次,不知道有没有其他能够避免这种情况的写法)。
但在实际运行时,刚运行会迟钝很久(推测是消息缓冲区有大量鼠标移动信息),连续点击正常,但是点一次后移动一会鼠标再点一次也会进入好几秒的延迟。
想请教一下该如何修改:
①有其他能判断左键松开一次执行一次事件的写法吗?
②如何解决这个鼠标处理的延迟,实现响应及时的“鼠标左键松开执行一次事件&rdq
0
价值
1
回答
浏览
下面是问题代码:?
// 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
0
价值
3
回答
浏览
现在用以下代码可以实现播放视频,但是会默认打开一个新的框体
如何直接在原框体播放这个视频呢?
希望能直接提供一份代码
#include<graphics.h>
#include<cstring>
#include<stdio.h>
#include<easyx.h>
#include <conio.h>
#include<windef.h>//EasyX 图像库头文件,用于绘图、鼠标操作、键盘操作等功能
#includ
0
价值
1
回答
浏览
此处给出的代码改自"详解透明贴图和三元光栅操作 - CodeBus"(https://codebus.cn/yangw/transparent-putimage)
在坐标轴方向为默认的(1,1)的情况下,透明图片可以正常输出
但我想通过坐标轴取反来输出水平翻转的图片,如代码中所示的那样,运行程序后却没有看到任何图像数据(坐标轴取反后透明图片无法正常输出)
0
价值
1
回答
浏览
问题描述
通常,在对某个 IMAGE 对象绘制时,我们会先保存旧的 WorkingImage,然后在 SetWorkingImage 到待绘制的 IMAGE 对象。
这样,我们就可以在对 IMAGE 对象绘制后,使用 SetWorkingImage 将绘制目标恢复到原先的状态。
这是很常见的做法。但是,如果在没有创建绘图窗口的情况下,上述操作就会出现问题。
触发 bug 的代码
#include <graphics.h
2
价值
1
回答
浏览
正常情况下运行 easyx 时只会弹出 easyx 的图形窗口而不会弹出平时常出现的终端黑色窗口,但 win11 某次版本更新之后它会同时弹出这两个窗口,并且键盘交互只能在黑色的终端窗口中进行,没法对着 easyx 的图形窗口进行键盘交互,并且关闭黑色终端窗口的同时 easyx 的窗口也会随之关闭。
操作系统:Windows 11 家庭中文版,操作系统版本 22621.819
编译环境:Microsoft visual studio 2022 community,EasyX_20220901
以下代码是临时编写的,一个简单的提供键盘交互功能的 e
0
价值
1
回答
浏览
小龙Dev-C++ 自带EasyX 报错 windows系统https://devcpp.gitee.io/manual/support-easyx.html
报错:
在此函数中: 'int main()':
12 2 [错误] 'getch' 未在此范围内声明
12 2 [注解] 建议替换为: 'gety'
#include &l
0
价值
1
回答
浏览
原本是想通过一个for循环将图片进行连续输出,然后通过延时来达到一个图片保留一段时间的效果,最后图片连续播放变成视频。
但是使用如下的函数时,图片根本就读取不了,现在就根本不知道下一步怎么办?求解答?
void image()
{
//输出图片
IMAGE img[60]; //定义一个(变量)对象;
for(int i=1;i<59;i++) //照片名字从1开始
{
//加载图片
loadimage(&img[i], "./梅西 (i).png&q
0
价值
1
回答
浏览
操作环境:windwos10 & vs2017 & EasyX Library for C++ (Ver:20220116)
我希望可以在dll中进行绘制,我可以将点坐标传给参数,绘图与保存完全在dll中实现,然后通过接口去调用
在EasyX中,设备分两种,分别做了一种是默认的绘图窗口,另一种是IMAGE对象的测试
在同一台设备相同环境下,我将这段代码在dll导出程序export工程里以dll方式导出,在控制台应用工程load里进行调用时,可以成功执行绘图并保存,
但是执行完后却无法释放dll导致程序阻塞或者崩溃,我
0
价值
2
回答
浏览
我现在想做一个双人小游戏,我需要用awsd或者上下左右键控制两个人的行动,这样很大可能就会导致玩家长按上下左右键或者awsd键,然后现在出现了一个问题就是如果我两个人一起按键盘就会导致后按键盘那个动作无效,就是无法两个人同时长按键盘,我如果两边一起长按的话,只有一个会持续移动,但是如果此时我其中没有被移动的那个人重新按一下键盘,那么刚才持续移动那个会停止(实现过程就是下面的代码把printf换成我设计的人物移动代码,在这里只单独长按一个键可以正常移动)
但是我缩减代码的时候又遇到了个问题
下面是我缩减后的代码
我本来是打算弄一个,按W就显示w,按
0
价值
1
回答
浏览
如果要将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
0
价值
1
回答
浏览
编译环境是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
0
价值
1
回答
浏览
win7下的控制台输入法候选界面是直接输出在控制台窗口最后一行的,我想在一个easyx界面实现这个效果
即通过easyx api获取按键,然后将拼音发送给输入法的dll,获得候选列表并将其渲染在我的窗口上(不显示输入法窗口),这可以实现吗?
2
价值
1
回答
浏览
大家好。
我的编译环境是VC++6.0
如下代码,如果代码正常运行,程序应该陷入无线循环。但他会崩溃,直接结束进程。如果把129501改成129500就没问题了。我想知道这个值的意义和原因。这样以后设计结构体时,才能更好地控制每个结构体内数组元素大小,不至于不小心超了,还一直找不到程序崩溃的原因。
# include <string>
using namespace std;
// 定义一个结构体
struct Node1
{
double x[129501];
};
0
价值
0
回答
浏览
VS 2019 无法使用“在静态库中使用MFC”,
我要生成 XP 应用,程序目前的设置已经参照这个了:VS 2019 生成 XP 应用
提示错误:
1>Sokoan.obj : error LNK2001: 无法解析的外部符号 __imp__CoInitialize@4
1>EasyXa.lib(EasyX.GdiPlus.obj)
0
价值
1
回答
浏览
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);
0
价值
2
回答
浏览
请问一下Easyx是否能实现图像的定点旋转,rotateimage是以图像中心点为原点进行旋转,而我需要以图像底边中点为原点进行旋转,有无其它的函数可以实现定点旋转效果?
0
价值
1
回答
浏览
我修改了坐标系的Y轴方向,和原点的位置,这样和平时使用的二维坐标系相同,现在的问题是
我使用arc函数来绘图的时候,弧度似乎与我想的不同,我想在第1象限绘图,但是好像绘制到第4象限了?请问这是为何?
我的起始弧度设置的是30度(pi/6), 结束弧度设置的是90度(pi/2) 为什么结果不对呢?
include <graphics.h>
#include <conio.h>
#include <math.h>
int main()
{
// 初始化绘图