SDL2 SDL_GetRenderDrawColor 只能显示黑色
SDL2 SDL_GetRenderDrawColor only able to display black
我能够用 SDL2 和 C++ 制作一个黑色背景的 window,只要我将 SDL_GetRenderDrawColor 中的一个参数从 0 更改为其他任何参数,我就会收到此错误:
Error (active) E0167 argument of type "int" is incompatible with
parameter of type "Uint8 *"
这是我的代码:
#include <stdio.h>
#include <SDL.h>
#undef main
int main(int argc, char** argv[]) {
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Window * window = SDL_CreateWindow("Test", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, 0);
SDL_Renderer * renderer = SDL_CreateRenderer(window, -1, 0);
bool quit = false;
while (!quit) {
SDL_Delay(10);
SDL_Event event;
SDL_PollEvent(&event);
switch (event.type) {
case SDL_QUIT: quit = true; break;
}
SDL_GetRenderDrawColor(renderer, 255, 0, 0, 0);
SDL_RenderClear(renderer);
SDL_RenderPresent(renderer);
}
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
我正在与 Visual Studio 2019 社区合作,我已经在我的工作场所 Visual Studio 中成功设置了 SDL2,但在家里做同样的事情却产生了这个错误。
如果你想设置渲染绘制颜色,你应该使用SDL_SetRenderDrawColor
。 SDL_GetRenderDrawColor
用于获取渲染绘制颜色。
我能够用 SDL2 和 C++ 制作一个黑色背景的 window,只要我将 SDL_GetRenderDrawColor 中的一个参数从 0 更改为其他任何参数,我就会收到此错误:
Error (active) E0167 argument of type "int" is incompatible with parameter of type "Uint8 *"
这是我的代码:
#include <stdio.h>
#include <SDL.h>
#undef main
int main(int argc, char** argv[]) {
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Window * window = SDL_CreateWindow("Test", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, 0);
SDL_Renderer * renderer = SDL_CreateRenderer(window, -1, 0);
bool quit = false;
while (!quit) {
SDL_Delay(10);
SDL_Event event;
SDL_PollEvent(&event);
switch (event.type) {
case SDL_QUIT: quit = true; break;
}
SDL_GetRenderDrawColor(renderer, 255, 0, 0, 0);
SDL_RenderClear(renderer);
SDL_RenderPresent(renderer);
}
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
我正在与 Visual Studio 2019 社区合作,我已经在我的工作场所 Visual Studio 中成功设置了 SDL2,但在家里做同样的事情却产生了这个错误。
如果你想设置渲染绘制颜色,你应该使用SDL_SetRenderDrawColor
。 SDL_GetRenderDrawColor
用于获取渲染绘制颜色。