gpt4 book ai didi

c++ - 从另一个函数控制 RenderWindow

转载 作者:太空宇宙 更新时间:2023-11-04 11:57:31 25 4
gpt4 key购买 nike

这听起来可能是一个非常简单的问题,但我有 SFML 1.6,我想从另一个函数控制我的 RenderWindow...我不是很擅长 C++ 或 SFML...:)

////////////////////////////////////////////////////////////
// Headers
////////////////////////////////////////////////////////////
#include <SFML/Window.hpp>
#include <SFML/System.hpp>
#include <SFML/Graphics.hpp>
#include <iostream>

using namespace std;



int main()
{

// Create the main window
sf::RenderWindow App(sf::VideoMode(800, 600, 32), "Guessing Game");
App.SetFramerateLimit(60); //Set FPS limit to 60 FPS
//Variables
bool atmainmenu = true;
//End Variables

// Start main loop
while (App.IsOpened())
{
printmessage(atmainmenu);
// Process events
sf::Event Event;
while (App.GetEvent(Event))
{
// Close window : exit
if (Event.Type == sf::Event::Closed)
App.Close();

// Escape key : exit
if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Escape))
App.Close();
if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::M)){

}
if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::F)){

}
}
// Display window on screen
App.Display();

}
return EXIT_SUCCESS;
}

void printmessage(bool atmainmenu)
{
if(atmainmenu){
//$$$$$$$################# HERE <----
}
}

那是我的代码,但我想从 atmainmenu 控制“App”。有什么我必须做的吗?谢谢

韦科001

最佳答案

像这样将您的渲染窗口作为参数传递给函数:

void printmessage(bool thing, sf::RenderWindow& app)
{
app.doSomething();
}

不要忘记将窗口作为引用&

然后调用main中的函数

printmessage(atmainmenu,app);

关于c++ - 从另一个函数控制 RenderWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15578353/

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