Найти - Пользователи
Полная версия: Моргание окна
Начало » Центр помощи » Моргание окна
1
Art-master
Доброго времени суток!

При написании кода своего проекта мне понадобилось использовать функцию os.system для выполнения некоторых задач, а точнее для копирования файлов из одной директории в другую.
Данная функция после своего выполнения возвращает строку (а точнее выводит, т.е. не return а print) в консоль. В данной строке прописывается примерно следующее: “Скопировано файлов: N”.

Несмотря на то, что у меня сам код приложения находится в pyw-файле, строка пытается вывестись и поэтому на какое-то мгновение у меня “моргает” окно моего приложения.

Подскажите, пожалуйста, что можно сделать, чтобы предотвратить это “моргание”.
valentjedi
Как гласит дока, вместо os.system() следует использовать модуль subprocess.call(). И там можно попробовать перенаправить вывод в null как-то так:
# было
status = os.system("mycmd" + " myarg")
# стало
with open(os.devnull, 'wb') as devnull:
    status = subprocess.call("mycmd" + " myarg", stdout=devnull, shell=True)
JOHN_16
Art-master
Для копирования файлов можно воспользоваться модулем shutil, тогда не придется вызывать внешнюю программу - что лучше скажется на вашей программе.
doza_and
valentjedi
у меня “моргает” окно моего приложения
И последнее замечание. Это не окно вашей программы это окно запускаемого процесса.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB