gpt4 book ai didi

c++ - 不知道参数 1 从 sf::Vector2i 到 const sf::Vector2i& 的转换

转载 作者:行者123 更新时间:2023-11-28 02:21:46 27 4
gpt4 key购买 nike

我正在尝试使用 SFML 库制作简单的按钮。当我将鼠标放在按钮上时,该按钮应该会更改其文本颜色。

void Button::updateColor(sf::Vector2i MousePos)
{
if(sprite.getGlobalBounds().contains(MousePos)) //here is the problem
text.setColor(color_covered);
else
text.setColor(color_uncovered);
}

.contains() 函数需要

const vector2<T>&

确切的错误是:

no known conversion for argument 1 from 'sf::Vector2i {aka sf::Vector2<int>}' to 'const sf::Vector2<float>&'

我努力改变

void Button::updateColor(sf::Vector2i MousePos)

void Button::updateColor(const sf::Vector2i& MousePos)

这消除了常量问题,但我仍然不知道如何处理无效引用。我不知道如何正确传递鼠标位置。

感谢您的帮助。

最佳答案

错误信息很明确:你试图传递一个 Vector2<int>而不是预期的 Vector2<float> .

float != int ,这是行不通的。修改您的输入变量。

关于c++ - 不知道参数 1 从 sf::Vector2i 到 const sf::Vector2i<float>& 的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32155433/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com