mouseX 및 mouseY 위치를 클래스에 전달하는 올바른 구문을 고수하려고합니다.SFML 이벤트에서 마우스 위치 보내기
내 시도는 다음과 같이이었다 :
// Start the game loop
while (window.isOpen())
{
// Process events
sf::Event event;
while (window.pollEvent(event))
{
// Close window : exit
if (event.type == sf::Event::Closed) {
window.close();
}
}
// Clear screen
window.clear();
// Draw the sprite
window.draw(sprite);
window.draw(lsprite);
if(btn_quit.IsIn(sf::Event::MouseMoveEvent::x,sf::Event::MouseMoveEvent::y){
btn_quit.RenderImg(window,"button_on.png");
} else {
btn_quit.RenderImg(window,"button.png");
}
///rest of the code not relevant to this issue
이 내 수업에 있습니다
bool IsIn(int mouseX, int mouseY)
{
if (((mouseX > m_x) && (mouseX < m_x + m_w))
&& ((mouseY > m_y) && (mouseY < m_y + m_h))) {
return true;
} else {
return false;
}
}
내가 x와 y의 입력에 오류가 점점 계속하는 방법이 밝히는 적 :
를error C2597: illegal reference to non-static member 'sf::Event::MouseMoveEvent::x'
error C2597: illegal reference to non-static member 'sf::Event::MouseMoveEvent::y'
음 ...이 오류 메시지가 말한다 것처럼. x 및 y 멤버가 정적 인 것처럼 액세스하려고 시도했지만 분명히 그렇지 않습니다. – Cubic
'btn_quit.IsIn (event.x, event.y)'를 호출해야하는 것처럼 보입니까? –