图像未被发现

时间:2013-03-21 04:03:10

标签: c++ sfml

当我试图在SFML 2.0中显示图像时,它永远无法找到图像。我正在使用Visual Studio Express C ++ 2010.这是我的代码。

#include "stdafx.h"

using namespace std;

int main()
 {
     // Create the main window
     sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");

     // Load a sprite to display
     sf::Texture texture;
     if (!texture.loadFromFile("image.png"))
     {
         cout << "Could not find file image.png" << endl;
         system("PAUSE");
     }
     sf::Sprite sprite(texture);

     // Create a graphical text to display


     // Load a music to play

     // 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);

         // Draw the string

         // Update the window
         window.display();
     }

     return EXIT_SUCCESS;
 }

但是当我将图像目录更改为特定的“C:\ Users \ Chase \ Documents \ Visual Studio 2010 \ Projects \ Boonce \ image.png”时,它可以工作。我需要在哪里放置image.png才能显示它而不具体。我听人说工作目录,我不知道它是什么。如果它是项目文件夹(Projects \ Boonce \),那么我已经尝试过,但它没有用。

2 个答案:

答案 0 :(得分:1)

它应该放在与.exe文件相同的目录中,或者取决于某些其他目录(可能是项目目录)中的项目设置。

答案 1 :(得分:0)

在Visual Studio中,您需要设置 工作目录

转到:

  • 项目
  • projectName )属性
  • 调试
  • 工作目录

并设置资产目录所在的路径。

默认为 $(ProjectDir),即 .vcproj 文件所在的目录。