QT автоматически сохраняет скриншот с шаблоном имен

Я хочу сохранять несколько скриншотов каждые 10 секунд под другим именем,

я хочу сохранить как это

здесь мой текущий код

      QScreen *screen = QGuiApplication::primaryScreen();
QPixmap pic  = screen->grabWindow(0);
pic.save("C:/Users/Coding/Desktop/img/desktop_1.png");

0

Решение

Вы можете отформатировать QString для вашего имени файла и добавить счетчик в конце, например так:

int counter = 1;
auto fileName = QString("C:/Users/Coding/Desktop/img/desktop_%1.png").arg(counter);
counter++;
pic.save(fileName);
1

Другие решения

Оберните эту функциональность в класс.
Добавьте статический счетчик в ваш класс (например, static long long counter {0};)
Объявите что-то вроде: QString m_path_to_image;
измени свой код на

pic.save(path_to_image.arg(m_counter));
0

По вопросам рекламы [email protected]