关于Easyx文字函数报错的问题。

0

我想在windows api函数中使用easyx的函数来输出文字,为啥我不用initgraph来创建easyx窗口的时候一使用绘图函数就会报错说函数试图向NULL写入数据呀。就算使用LOGFONT也是一样。

#include <easyx.h>

int main()
{
	LOGFONTW Font;
	gettextstyle(&Font);	// 报错:试图读取 NULL
	return 0;
}
#include <easyx.h>
#include <string.h>

int main()
{
	LOGFONTW Font = { 0 };
	wcsncpy(Font.lfFaceName, L"宋体", LF_FACESIZE);
	settextstyle(&Font);		// 报错:试图向 NULL 写入数据
	return 0;
}
ava
阿雪♥

2022-11-22

0

你没有绘图设备就调用绘图函数,当然会出错。

就算使用 gettextstyle,也是获取的绘图设备的字体样式,必须先创建绘图设备。

ava
慢羊羊

2022-11-22

他说的是 使用 initgraph 函数的话初始化的话 settextstyle(&Font); 这个函数就报报错:试图向 NULL 写入数据去掉 initgraph 就能正常运行来着? 我看了下不加initgraph 也能运行 - 波澜 2022-11-22
好的,不过使用SetWorkingImage之后就可以了,谢谢了 - 阿雪♥ 2022-11-22
IMAGE 类型变量和绘图窗口都属于绘图设备,所以 SetWorkingImage 之后你的代码就没问题了。 - 慢羊羊 2022-11-22
技术讨论社区