606 问题

0

价值

0

答案

2

浏览

为什么我用了TransparentBlt和BitBLT两个函数来实现双缓冲制动画时,会有这么一个情况。如果在Bitblt之前不加一个背景图,则背景会闪,如果加了一个背景图,则前景会闪。

由于有图片的插入,所以不能调试,大神帮我康康吧!谢谢啦!

#include <graphics.h>
#include <conio.h>
#include<stdio.h>
#include<math.h>
#pragma  comment(lib,"Msimg32.lib")
#undef UNICODE
#define length 1000
#define height 1000
#define PAI 3.1415
#define sharkfishnumbe
ava
思密达

昨天 22:15

0

价值

0

答案

10

浏览

做一个展示图片的界面,但打开图片返回主菜单后,主菜单的按钮用不了了

做一个展示图片的界面,但打开图片返回主菜单后,主菜单的按钮用不了了。不知道是程序哪个地方有问题。怎样使开打图片返回后还能继续使用主菜单。

#include <graphics.h> // 引用 EasyX 图形库
#include <conio.h>
#include <stdio.h>
#include <io.h>

int main()
{
	IMAGE img1;
	IMAGE img2;
	IMAGE img3;
	initgraph(1366, 700);
ava
罗泽文

昨天 18:59

0

价值

1

答案

20

浏览

0

价值

1

答案

37

浏览

c++双缓冲求解

找到了一个通过ReadConsoleOutputCharacter以及WriteConsoleOutputCharacter实现双缓冲的方式,但无法保存更多的字符信息(如颜色等)。

即使是这样,我依然不能够找到能够正常运作的代码或手动实现这样的功能。

这是我从网上找来的代码,还请村长帮忙纠错。

环境为win10 20h2 19042.928,MSVC以及g++编译出的代码均失效。

#include <stdio.h>
#include <Windows.h&
C++
ava
无名氏

2021-5-2

0

价值

1

答案

17

浏览

如何获取其它窗口被激活的消息,以暂停initgraph图形窗口的工作?

目前问题:

我编了个initgraph图形窗口程序,拖动鼠标左键会画图。但当鼠标点击其它软件窗口,就会把其它窗口激活,当在这些其它软件上进行的鼠标操作也会同时作用在initgraph图形窗口创建的程序上,干扰了正常工作。

请教,如何在其它窗口激活时,获得一个变量值,用来控制initgraph图形窗口程序暂停工作?

ava
人民万岁

2021-4-30

1

价值

1

答案

41

浏览

使用 _getwch() 获取中文输入时阻塞的问题
int main()
{
	initgraph(960, 640, EW_SHOWCONSOLE);
	setbkcolor(WHITE);
	cleardevice();

	std::wstring str = L"";

	while (true)
	{
		if (_kbhit())
		{
			str += (TCHAR)_getwch();
		}		
	}

	return 0;
}

这段代码在获取中文输入时会进入阻塞状态,经过测试是卡在了 _getwch() 这里。

ava
慢热友人.

2021-4-26

0

价值

1

答案

34

浏览

如何实现两部分绘制循环同时进行,互不影响

现在的代码只能在樱花树绘制完之后进行流星的移动,有没有办法可以让流星自由移动的同时绘制樱花树

#include <easyx.h>
#include<stdio.h>
#include <graphics.h>
#include<conio.h>
#include<stdlib.h>
#include <time.h>
#include <algorithm>

IMAGE meteor1, meteor2;
float offset
ava
希冉

2021-4-25

0

价值

1

答案

42

浏览

请教:如何在 initgraph 图形窗口上创建 initgraph 图形子窗口?我用 CreateWindow() 建立子窗口后也不行。

问题简述:

1、创建图形窗口 initgraph(500, 480);

2、再用 CreateWindow 创建一个新窗口:

HWND hwnd = CreateWindowEx(styleEx, szClass, szTitle, style, 50, 50,400, 400, 0, 0, hIns, 0); // x, y, 宽, 高
UpdateWindow(hwnd);
ShowWindow(hwnd, SW_SHOW);

3、如何把新开的窗口改成图

ava
人民万岁

2021-4-22

0

价值

2

答案

41

浏览

怎样在利用 sleep 循环播放图片实现简单动画时,进行鼠标交互

这个代码运行起来自后接收不到鼠标信息,无法终止,不知道是不是因为用了 sleep 的问题

#include <easyx.h>
#include <stdio.h>
#include <graphics.h>
#include <conio.h>
#include <stdlib.h>
#include <algorithm>

int main()

	initgraph(WIDTH, 590, SHOWCONSOLE); // 新开一个画面
ava
希冉

2021-4-21

0

价值

1

答案

61

浏览

easyx图片

一个c++控制台easyx程序,调用了本地图片文件,此程序在其他电脑上运行时,不显示图片,怎么才能把图片写入别人电脑的指定文件并在运行时显示?

0

价值

1

答案

48

浏览

图形界面下的计算输入与输出

我有大量实验数据,我能把数据输入到字符变量数组里计算,但是经过计算之后为浮点型,输出不了的结果,我该咋办?我貌似计算错了?

0

价值

1

答案

73

浏览

旋转贴图

如何实现鼠标控制一组掩码图的自由旋转还不卡顿?自个算了下角度还是转不了。下面代码打算通过计算图片坐标和鼠标坐标之间的角度实现旋转,持续接收鼠标信息,类似于炮台旋转,图片移向(炮口方向)转向鼠标点击处。。。

while (1)
{
	//使物体随便转向
	if (m.uMsg == WM_LBUTTONDOWN)//对事件进行分类
	{
		if ((m.y - W_y) != 0)
		{
			angle = atan((m.x - W_x) / (m.y - W_y));
			rotateimage(&
ava
某某

2021-4-13

-2

价值

1

答案

114

浏览

怎么用easyx 实现骰子滚动的画面

怎么实现画骰子,然后还得有骰子滚动出点数

ava
小羊

2021-4-10

0

价值

1

答案

130

浏览

使用loadimage和putimage函数后图片加载出来是黑的

大家好,求回答,万分感谢。这是我的代码。

运行之后圆成功画了出来,我把背景颜色改成了红色,输出图片,只看到了黑漆漆的一张图,我用了自己的电脑和别人的都是这样,图片是用Windows截屏工具生成的。

#include<stdafx.h>
#include<iostream>
#include<graphics.h>
#include<conio.h>
using namespace std;

int main(){
	initgraph(700,700);
ava
匿名

2021-4-8

-2

价值

0

答案

131

浏览

请问c语言如何实现月亮阿绕着地球转,地球绕着太阳转。太阳和地球为椭圆

修改这个提问模版即可。详细描述你的问题有助于快速获得帮助。

详细描述下自己遇到的问题

记得说清楚你使用的操作系统、编译环境

源代码要使用工具栏上的 {;} 按钮插入,以获得更好的阅读体验。选中代码区,按 Delete 键或“剪切”按钮可以删除。

#include <stdio.h>

// 尽量插入一个完整的、可以编译的代码
// 但要删掉与问题无关的代码
int main()
{
	printf("Hello worl
ava
ooloowow

2021-4-5

0

价值

1

答案

187

浏览

关于屏幕截图的问题

void get_desktop(IMAGE* pimg) // 抓取桌面图像到 *pimg 对象中
{
    // 通过 Windows API 获取桌面的宽高
    int w = GetSystemMetrics(SM_CXSCREEN);
    int h = GetSystemMetrics(SM_CYSCREEN);
    Resize(pimg, w, h);
    HDC srcDC = GetDC(NULL);                            // 获取桌面 DC
ava
ckj

2021-4-4

0

价值

1

答案

270

浏览

图片在移动的过程中有严重抖动
#include <easyx.h>

int main()
{

	initgraph(1600, 900);
	IMAGE* image = new IMAGE();
	loadimage(image, _T(R"*(.\Resources\Textures\test.jpg)*"));
	float x = 0;

	BeginBatchDraw();

	while (true)
	{
		cleardevice();
		putimage(x, 0, image);
		x += 5;
		FlushBatc
ava
你好

2021-4-3

0

价值

1

答案

195

浏览

程序可以运行但是没法播放音乐
#include <graphics.h>
#include<stdio.h>
#include<mmsystem.h>
#pragma comment(lib,"winmm.lib")
void playbgm()
{
	mciSendString(L"open D:\\long++/F_yy - 万有引力.wav", NULL,0,NULL);
	mciSendString(L"play D:\\long++/F_yy - 万有引力.wav", NULL,0,NULL);
}

0

价值

1

答案

192

浏览

拼图过程中,移动的图片与鼠标点击的图片不一致,并且有时候会出现多张黑色的图。

拼图过程中,移动的图片与鼠标点击的图片不一致,并且有时候会出现多张黑色的图。

#include<stdio.h>
#include<stdlib.h>
#include<easyx.h>
#include<time.h>
#include<conio.h>
void loadResouce();//加载资源
void UserUI();//渲染
void drawMenu();//菜单
void PlayGame();//游戏过程
voi
ava
艾茶

2021-3-25

1

价值

1

答案

215

浏览

图形界面接收不到键盘输入

VS下的图形界面,想通过键盘的输入接受到用户名,再反显到图形界面中,但是用这段代码实现不了,没想明白问题在哪,求助大佬们

#include <stdio.h>

int main()
{
	/*输入用户名*/
	int i, j = 0, k = 0;
	char ch;
	char s[2];
	
	MOUSEMSG m;//定义鼠标信息
	
	FlushMouseMsgBuffer();
	m = GetMouseMsg();//获取一条鼠标消息

			
	while
ava
希冉

2021-3-24