SFML и C++ Уроки \ Разработка игр › Форумы › SFML Graphics › Загрузка изображения по номеру pic.loadFromFile("img/N.png"); › Ответ в теме: Загрузка изображения по номеру pic.loadFromFile("img/N.png");
C++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
int main() { RenderWindow window(VideoMode::getDesktopMode(), "SFML Test", Style::Fullscreen); Image pic[10]; int i = 1; pic[i].loadFromFile("img/" + std::to_string((int)i) + ".png"); Vector2u size = pic[i].getSize(); Texture picfon; picfon.loadFromImage(pic[i]); Sprite fon; fon.setTexture(picfon); while (window.isOpen()) { sf::Event event; while (window.pollEvent(event)) { if (event.type == sf::Event::Closed || (event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Escape)) window.close(); } if (Keyboard::isKeyPressed(Keyboard::Left)) { fon.setScale(static_cast<float>(window.getSize().x) / size.x, static_cast<float>(window.getSize().y) / size.y); } if (Keyboard::isKeyPressed(Keyboard::Right)) { fon.setScale(1, 1); } if (Keyboard::isKeyPressed(Keyboard::Up)) { float xsize = (static_cast<float>(window.getSize().x) / size.x); fon.setScale(xsize , xsize); } if (Keyboard::isKeyPressed(Keyboard::Down)) { float ysize = (static_cast<float>(window.getSize().y) / size.y); fon.setScale(ysize , ysize); } if (Keyboard::isKeyPressed(Keyboard::Return)) { i++; pic[i].loadFromFile("img/" + std::to_string((int)i) + ".png"); picfon.loadFromImage(pic[i]); } window.clear(Color::White); window.draw(fon); window.display(); } return 0; } |