Operacje na stringach oraz wywołanie funkcji

0

Pomoże ktoś? bo mam 2 problemy,:
jaki cudem przy wywołaniu tej metody, plik ze zdj. zapisuje się w katalogu w kótrym jest plik .py a nie w podanej scieżce?

class....
directory = "C:\\Users\\new\\Desktop\\supreme\\Screen"
formatScreen = '.png'
 def MainFuncional(self):
        actualTime = datetime.datetime.now().strftime("%Y %b %d %Hh%Mm%Ss")
        img = PIL.ImageGrab.grab()
        img.save('{0}{1}{2}'.format(self.directory,actualTime,formatScreen),"png")

2 pytanie:
dlaczego przy wywołaniu metody dostaje tylko 1 zdj. Tylko raz sie wykonuje funkcja

  def snapANDsleep(self):
        licznik = 0
        while licznik < 5:
            licznik += 1 
            self.sleep();
    def sleep(self):
         Snaptime = threading.Timer(4, SupremeSnap().takeScreen)
         Snaptime.start()

0

Udało mi się rozwiązać 1 problem, a było nim, złe wywołanie funkcji, ale 2 problem, to ja nie wiem, bo nie wiem co się dzieje
zmieniłem trochę ...

      self.button_start.clicked.connect(self.snapANDsleep) 
....
 def snapANDsleep(self):
        licznik = 0
        while licznik < 5:
            licznik = licznik + 1 
            SupremeSnap.multiThread(); # po zmianie z self. na SupremeSnap. czyli nazwy klasy, w której się znajdują te metody/funkcje porgram się wysypuje po włączeniu przycisku
    def multiThread(self):
         Snaptime = threading.Timer(2, SupremeSnap().takeScreen)
         Snaptime.start()

wydaje mi się to bez sensu, bo przeciez nazwa_klasy. i self. to to samo jeśli mówimy o klasie w której są te funkcje

1 użytkowników online, w tym zalogowanych: 0, gości: 1