Υπηρεσία ScriptForge.UI

Η υπηρεσία UI (διεπαφή χρήστη) απλοποιεί την αναγνώριση και τον χειρισμό των διαφορετικών παραθύρων που συνθέτουν ολόκληρη την εφαρμογή του LibreOffice:

tip

Η υπηρεσία διεπαφής χρήστη είναι το σημείο εκκίνησης για το άνοιγμα, τη δημιουργία ή την πρόσβαση στο περιεχόμενο νέων ή υφιστάμενων εγγράφων από ένα σενάριο χρήστη.


Ορισμοί

WindowName

Ένα παράθυρο μπορεί να οριστεί με διάφορους τρόπους:

Το όνομα του παραθύρου κάνει διάκριση πεζών-κεφαλαίων.

Αντικείμενο εγγράφου

Οι μέθοδοι CreateDocument, CreateBaseDocument, GetDocument, OpenBaseDocument και OpenDocument, που περιγράφονται παρακάτω, δημιουργούν αντικείμενα εγγράφων. Όταν ένα παράθυρο περιέχει ένα έγγραφο, μια παρουσία της κλάσης Document αντιπροσωπεύει αυτό το έγγραφο. Ένα αντιπαράδειγμα της IDE Basic δεν είναι ένα έγγραφο αλλά είναι ένα παράθυρο στην ορολογία μας. Επιπλέον, ένα έγγραφο έχει έναν τύπο: Calc, Impress, Writer, ...

Οι συγκεκριμένες ιδιότητες και μέθοδοι που ισχύουν στα έγγραφα υλοποιούνται σε μια κλάση εγγράφων.

tip

Η υλοποίηση της κλάσης αντικειμένων εγγράφου γίνεται στη συσχετισμένη βιβλιοθήκη SFDocuments. Δείτε την υπηρεσία "Document".


Κλήση υπηρεσίας

Πριν χρησιμοποιήσετε την υπηρεσία UI, πρέπει να φορτωθεί ή να εισαχθεί η βιβλιοθήκη ScriptForge:

note

• Οι μακροεντολές Basic απαιτούν τη φόρτωση της βιβλιοθήκης ScriptForge χρησιμοποιώντας την ακόλουθη πρόταση:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Τα σενάρια Python απαιτούν εισαγωγή από την ενότητα scriptforge:
από το scriptforge import CreateScriptService


Σε Basic

    Dim ui As Variant
    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Set ui = CreateScriptService("UI")
  
Σε Python

    from scriptforge import CreateScriptService
    ui = CreateScriptService("UI")
  

Ιδιότητες

Όνομα

Μόνο για ανάγνωση

Τύπος

Περιγραφή

ActiveWindow

Ναι

String

ένα έγκυρο και μοναδικό WindowName για το τρέχον ενεργό παράθυρο. Όταν το παράθυρο δεν μπορεί να αναγνωριστεί, επιστρέφεται μια συμβολοσειρά μηδενικού μήκους.

Documents

Ναι

String array

Ο κατάλογος με τα τρέχοντα ανοιχτά έγγραφα. Τα ειδικά παράθυρα αγνοούνται. Αυτός ο κατάλογος αποτελείται από έναν μηδενικό μονοδιάστατο πίνακα είτε ονομάτων αρχείων (σε σημειογραφία SF_FileSystem.FileNaming), είτε από τίτλους παραθύρων για μη αποθηκευμένα έγγραφα.

Height

Yes

Integer

Returns the height of the active window in pixels.

Width

Yes

Integer

Returns the width of the active window in pixels.

X

Yes

Integer

Returns the X coordinate of the active window, which is the distance to the left edge of the screen in pixels.

Y

Yes

Integer

Returns the Y coordinate of the active window, which is the distance to the top edge of the screen in pixels. This value does not consider window decorations added by your operating system, so even when the window is maximized this value may not be zero.


Σταθερές

Όνομα

Τιμή

Περιγραφή

MACROEXECALWAYS

2

Οι μακροεντολές εκτελούνται πάντα

MACROEXECNEVER

1

Οι μακροεντολές δεν εκτελούνται ποτέ

MACROEXECNORMAL

0

Η εκτέλεση των μακροεντολών εξαρτάται από τις ρυθμίσεις του χρήστη


Παράδειγμα:

Τα παρακάτω παραδείγματα δείχνουν ένα MsgBox με τα ονόματα όλων των ανοιχτών εγγράφων.

Σε Basic

      Dim openDocs as Object, strDocs as String
     Set openDocs = ui.Documents()
     strDocs = openDocs(0)
     For i = 1 to UBound(openDocs)
         strDocs = strDocs & Chr(10) & openDocs(i)
     Next i
     MsgBox strDocs
   
Σε Python

     ui = CreateScriptService("UI")
     bas = CreateScriptService("Basic")
     openDocs = ui.Documents()
     strDocs = "\n".join(openDocs)
     bas.MsgBox(strDocs)
   

Κατάλογος μεθόδων στην υπηρεσία UI

Activate
CreateBaseDocument
CreateDocument (*)
GetDocument
Maximize

Minimize
OpenBaseDocument
OpenDocument (*)
Resize

RunCommand
SetStatusBar (*)
ShowProgressBar
WindowExists


warning

Σημειώστε, κατ' εξαίρεση, ότι οι μέθοδοι με την ένδειξη (*) δεν ισχύουν για έγγραφα Base.


Activate

Ενεργοποιεί το καθορισμένο παράθυρο. Η μέθοδος επιστρέφει True εάν το δεδομένο παράθυρο βρεθεί και μπορεί να ενεργοποιηθεί. Δεν υπάρχει αλλαγή στην πραγματική διεπαφή χρήστη εάν κανένα παράθυρο δεν ταιριάζει με την επιλογή.

Σύνταξη:

svc.Activate(windowname: str): bool

Παράμετροι:

windowname (όνομα παραθύρου): δείτε τους ορισμούς παραπάνω.

Παράδειγμα:

Σε Basic

      ui.Activate("C:\Documents\My file.odt")
    
Σε Python

      ui.Activate(r"C:\Documents\My file.odt")
    

CreateBaseDocument

Δημιουργεί και αποθηκεύει ένα νέο έγγραφο του LibreOffice Base που ενσωματώνει μια κενή βάση δεδομένων του συγκεκριμένου τύπου. Η μέθοδος επιστρέφει μια παρουσία υπηρεσίας Document.

Σύνταξη:

svc.CreateBaseDocument(filename: str, embeddeddatabase: str = 'HSQLDB', registrationname: str = '', opt calcfilename: str): svc

Παράμετροι:

filename (όνομα αρχείου): Προσδιορίζει το αρχείο προς δημιουργία. Πρέπει να ακολουθεί τη σημειογραφία SF_FileSystem.FileNaming. Εάν το αρχείο υπάρχει ήδη, αντικαθίσταται χωρίς προειδοποίηση

embeddeddatabase (ενσωματωμένη βάση δεδομένων): Είτε "HSQLDB" (προεπιλογή), "FIREBIRD" ή "CALC".

registrationname (όνομα καταχώρησης): Το όνομα που χρησιμοποιείται για την αποθήκευση της νέας βάσης δεδομένων στο μητρώο βάσεων δεδομένων. Όταν = "" (προεπιλογή), δεν πραγματοποιείται εγγραφή. Εάν το όνομα υπάρχει ήδη, αντικαθίσταται χωρίς προειδοποίηση.

filename (όνομα αρχείου calc): Μόνο όταν η embeddeddatabase = "CALC", το calcfilename αντιπροσωπεύει το αρχείο που περιέχει τους πίνακες ως φύλλα Calc. Το αρχείο πρέπει να υπάρχει διαφορετικά εμφανίζεται σφάλμα.

Παράδειγμα:

Σε Basic

      Dim myBase As Object, myCalcBase As Object
      Set myBase = ui.CreateBaseDocument("C:\Databases\MyBaseFile.odb", "FIREBIRD")
      Set myCalcBase = ui.CreateBaseDocument("C:\Databases\MyCalcBaseFile.odb", _
          "CALC", , "C:\Databases\MyCalcFile.ods")
   
Σε Python

     myBase = ui.CreateBaseDocument(r"C:\Databases\MyBaseFile.odb", "FIREBIRD")
     myCalcBase = ui.CreateBaseDocument(r"C:\Databases\MyCalcBaseFile.odb", \
         "CALC", calcfilename = r"C:\Databases\MyCalcFile.ods")
   

CreateDocument (*)

Δημιουργία νέου εγγράφου του LibreOffice συγκεκριμένου τύπου ή με βάση ένα δεδομένο πρότυπο. Η μέθοδος επιστρέφει ένα αντικείμενο εγγράφου.

Σύνταξη:

svc.CreateDocument(documenttype: str = '', templatefile: str = '', hidden: bool = False): svc

Παράμετροι:

documenttype (τύπος εγγράφου): "Calc", "Writer" κ.λπ. Εάν δεν υπάρχει, πρέπει να υπάρχει το όρισμα templatefile.

templatefile (αρχείο προτύπου): Το πλήρες FileName (Όνομα αρχείου) του προτύπου για τη δημιουργία του νέου εγγράφου. Εάν το αρχείο δεν υπάρχει, το όρισμα αγνοείται. Η υπηρεσία FileSystem παρέχει τις ιδιότητες TemplatesFolder και UserTemplatesFolder για να βοηθήσει στη δημιουργία του ορίσματος.

hidden (κρυφό): εάν είναι True, ανοίξτε το νέο έγγραφο στο παρασκήνιο (προεπιλογή = False). Να χρησιμοποιείται με προσοχή: η ενεργοποίηση ή το κλείσιμο κατόπιν, μπορεί να γίνει μόνο μέσω προγραμματισμού.

Παράδειγμα:

Και στα δύο παρακάτω παραδείγματα, η πρώτη κλήση στη μέθοδο CreateDocument δημιουργεί ένα κενό έγγραφο Calc, ενώ η δεύτερη δημιουργεί ένα έγγραφο από ένα αρχείο προτύπου.

Σε Basic

      Dim myDoc1 As Object, myDoc2 As Object, FSO As Object
      Set myDoc1 = ui.CreateDocument("Calc")
      Set FSO = CreateScriptService("FileSystem")
      Set myDoc2 = ui.CreateDocument(, FSO.BuildPath(FSO.TemplatesFolder, "personal/CV.ott"))
   
Σε Python

     myDoc1 = ui.CreateDocument("Calc")
     fs = CreateScriptService("FileSystem")
     myDoc2 = ui.CreateDocument(templatefile = fs.BuildPath(fs.TemplatesFolder, "personal/CV.ott"))
   

GetDocument

Επιστρέφει ένα ανοιχτό αντικείμενο εγγράφου που αναφέρεται είτε στο ενεργό παράθυρο, σε ένα δεδομένο παράθυρο ή στο ενεργό έγγραφο.

Σύνταξη:

svc.GetDocument(windowname: str = ''): svc

svc.GetDocument(windowname: uno): svc

Παράμετροι:

windowname (όνομα παραθύρου): Δείτε τους παραπάνω ορισμούς. Εάν αυτό το όρισμα απουσιάζει, χρησιμοποιείται το ενεργό παράθυρο. Γίνονται επίσης αποδεκτά αντικείμενα UNO των τύπων com.sun.star.lang.XComponent ή com.sun.star.comp.dba.ODatabaseDocument. Έτσι, μεταβιβάζοντας το ThisComponent ή το ThisDatabaseDocument ως όρισμα δημιουργείται μια νέα υπηρεσία SFDocuments.Document, Base ή Calc.

Παράδειγμα:

Σε Basic

      Dim myDoc As Object
      Set myDoc = ui.GetDocument("C:\Documents\My file.odt")
      Set myBase = ui.GetDocument(ThisDatabaseDocument)
   
Σε Python

     from scriptforge import CreateScriptService
     bas = CreateScriptService("Basic")
     myDoc = ui.GetDocument(r"C:\Documents\My file.odt")
     myDoc = ui.GetDocument(bas.ThisComponent)
   
tip

Για πρόσβαση στο όνομα του ενεργού παραθύρου, ανατρέξτε στην ιδιότητα ActiveWindow.


Maximize

Μεγιστοποιεί το ενεργό παράθυρο ή το δεδομένο παράθυρο.

Σύνταξη:

svc.Maximize(windowname: str)

Παράμετροι:

windowname (όνομα παραθύρου): δείτε τους ορισμούς παραπάνω. Εάν αυτό το όρισμα απουσιάζει, το ενεργό παράθυρο μεγιστοποιείται.

Παράδειγμα:

Σε Basic

      ui.Maximize("Untitled 1")
   
Σε Python

     ui.Maximize("Untitled 1")
   

Minimize

Ελαχιστοποιεί το ενεργό παράθυρο, ή το δεδομένο παράθυρο.

Σύνταξη:

svc.Minimize(windowname: str)

Παράμετροι:

windowname (όνομα παραθύρου): δείτε τους ορισμούς πιο πάνω. Εάν αυτό το όρισμα απουσιάζει, το ενεργό παράθυρο ελαχιστοποιείται.

Παράδειγμα:

Σε Basic

     ui.Minimize()
   
Σε Python

     ui.Minimize()
   

OpenBaseDocument

Ανοίξτε ένα υπάρχον έγγραφο της LibreOffice Base. Η μέθοδος επιστρέφει ένα αντικείμενο εγγράφου.

Σύνταξη:

svc.OpenBaseDocument(filename: str = '', registrationname: str = '', macroexecution: int = 0): svc

Παράμετροι:

filename (όνομα αρχείου): Προσδιορίζει το αρχείο που θα ανοίξει. Πρέπει να ακολουθεί τη σημειογραφία SF_FileSystem.FileNaming.

registrationname (όνομα καταχώρησης): Το όνομα που θα χρησιμοποιηθεί για την εύρεση της βάσης δεδομένων στο μητρώο βάσεων δεδομένων. Αγνοείται εάν FileName <> "".

macroexecution (εκτέλεση μακροεντολών): 0 = η συμπεριφορά ορίζεται από τη διαμόρφωση του χρήστη, 1 = οι μακροεντολές δεν είναι εκτελέσιμες, 2 = οι μακροεντολές είναι εκτελέσιμες.

Παράδειγμα:

Σε Basic

      Dim myBase As Object
      Set myBase = ui.OpenBaseDocument("C:\Documents\myDB.odb", MacroExecution := ui.MACROEXECALWAYS)
   
Σε Python

     ui.OpenBaseDocument(r"C:\Documents\myDB.odb", macroexecution = ui.MACROEXECALWAYS)
   
tip

Για να βελτιώσετε την αναγνωσιμότητα του κώδικα, μπορείτε να χρησιμοποιήσετε προκαθορισμένες σταθερές για το όρισμα macroexecution , όπως στα παραπάνω παραδείγματα.


OpenDocument (*)

Άνοιγμα υφιστάμενου εγγράφου LibreOffice με τις δεδομένες επιλογές. Επιστρέφει ένα αντικείμενο εγγράφου, ή μία από τις υποκλάσεις του. Η μέθοδος επιστρέφει Nothing (στη Basic) / None (στην Python) εάν το άνοιγμα απέτυχε, ακόμη και όταν η αποτυχία προκαλείται από απόφαση του χρήστη.

Σύνταξη:

svc.Opendocument(filename: str, password: str = '', readonly: bool = False, hidden: bool = False, macroexecution: int = 0, filtername: str = '', filteroptions: str = ''): svc

Παράμετροι:

filename (όνομα αρχείου): Προσδιορίζει το αρχείο που θα ανοίξει. Πρέπει να ακολουθεί τη σημειογραφία FileNaming της υπηρεσίας FileSystem.

password (κωδικός πρόσβασης): Για χρήση όταν το έγγραφο είναι προστατευμένο. Εάν είναι λάθος ή απουσιάζει ενώ το έγγραφο είναι προστατευμένο, θα ζητηθεί από τον χρήστη να εισαγάγει έναν κωδικό πρόσβασης.

readonly (μόνο για ανάγνωση): Προεπιλογή = False.

hidden (κρυφό): εάν είναι True, ανοίξτε το νέο έγγραφο στο παρασκήνιο (προεπιλογή = False). Να χρησιμοποιείται με προσοχή: η ενεργοποίηση ή το κλείσιμο κατόπιν, μπορεί να γίνει μόνο μέσω προγραμματισμού.

macroexecution (εκτέλεση μακροεντολών): 0 = η συμπεριφορά ορίζεται από τη διαμόρφωση του χρήστη, 1 = οι μακροεντολές δεν είναι εκτελέσιμες, 2 = οι μακροεντολές είναι εκτελέσιμες.

filtername (όνομα φίλτρου): Το όνομα ενός φίλτρου που πρέπει να χρησιμοποιηθεί για τη φόρτωση του εγγράφου. Εάν υπάρχει, το φίλτρο πρέπει να υπάρχει.

filteroptions (επιλογές φίλτρου): Μια προαιρετική συμβολοσειρά επιλογών που σχετίζεται με το φίλτρο.

Παράδειγμα:

Σε Basic

      Dim myDoc As Object, FSO As Object
      Set myDoc = ui.OpenDocument("C:\Documents\myFile.odt", ReadOnly := True)
   
Σε Python

     ui.OpenDocument(r"C:\Documents\myFile.odt", readonly = True)
   

Resize

Αλλάζει το μέγεθος και/ή μετακινεί το ενεργό παράθυρο. Τα απόντα και τα αρνητικά ορίσματα αγνοούνται. Εάν το παράθυρο ελαχιστοποιηθεί ή μεγιστοποιηθεί, η κλήση του Resize (Αλλαγή μεγέθους) χωρίς ορίσματα το επαναφέρει.

Σύνταξη:

svc.Resize(left: int = -1, top: int = -1, width: int = -1, height: int = -1)

Παράμετροι:

left, top (αριστερά, επάνω): Οι αποστάσεις της επάνω αριστερής γωνίας από το επάνω και το αριστερό άκρο της οθόνης, σε εικονοστοιχεία.

width, height (πλάτος, ύψος): Νέες διαστάσεις του παραθύρου, σε εικονοστοιχεία.

Παράδειγμα:

Στα παρακάτω παραδείγματα, το width (πλάτος)και το height (ύψος) του παραθύρου αλλάζουν, ενώ τα top (επάνω) και left (αριστερά) παραμένουν αμετάβλητα.

Σε Basic

      ui.Resize(, ,500, 500)
   
Σε Python

     ui.Resize(width = 500, height = 500)
   
tip

Για να αλλάξετε το μέγεθος ενός παραθύρου που δεν είναι ενεργό, πρώτα ενεργοποιήστε το χρησιμοποιώντας τη μέθοδο Activate.


RunCommand

Εκτελεί μια εντολή UNO στο τρέχον παράθυρο. Μερικές τυπικές εντολές είναι: Save, SaveAs, ExportToPDF, Undo, Copy, Paste, κ.λπ.

Οι εντολές μπορούν να εκτελεστούν με ή χωρίς ορίσματα. Τα ορίσματα δεν επικυρώνονται πριν από την εκτέλεση της εντολής. Εάν η εντολή ή τα ορίσματά της δεν είναι έγκυρα, τότε δεν θα συμβεί τίποτα.

tip

Για έναν πλήρη κατάλογο εντολών UNO που μπορούν να εκτελεστούν στο LibreOffice, ανατρέξτε στη σελίδα Wiki Development/DispatchCommands.


Σύνταξη:

svc.RunCommand(command: str, [args: any])

Παράμετροι:

command (εντολή): συμβολοσειρά με διάκριση πεζών-κεφαλαίων που περιέχει το όνομα εντολής UNO. Η συμπερίληψη του προθέματος ".uno:" στην εντολή είναι προαιρετική. Η ίδια η εντολή δεν ελέγχεται για ορθότητα. Εάν δεν συμβεί τίποτα μετά την κλήση της εντολής, τότε η εντολή είναι πιθανώς λάθος.

args (ορίσματα): Για κάθε όρισμα που θα μεταβιβαστεί στην εντολή, καθορίστε ένα ζεύγος που περιέχει το όνομα και την τιμή του ορίσματος.

Παράδειγμα:

Σε Basic

Το ακόλουθο παράδειγμα εκτελεί την εντολή .uno:About στο τρέχον παράθυρο.


    Set ui = CreateScriptService("UI")
    ui.RunCommand("About")
  

Παρακάτω είναι ένα παράδειγμα που εκτελεί την εντολή UNO .uno:BasicIDEAappear και μεταβιβάζει τα ορίσματα που απαιτούνται για το άνοιγμα της IDE Basic σε μια συγκεκριμένη γραμμή μιας λειτουργικής μονάδας.


    ' Τα ορίσματα πέρασαν στην εντολή:
    ' Document  = "LibreOffice Macros & Dialogs"
    ' LibName = "ScriptForge"
    ' Name = "SF_Session"
    ' Line = 600
    ui.RunCommand(".uno:BasicIDEAppear", "Document", "LibreOffice Macros & Dialogs", _ 
                  "LibName", "ScriptForge", "Name", "SF_Session", "Line", 600)
  

Σημειώστε ότι η κλήση της εντολής BasicIDEAappear χωρίς ορίσματα, θα ανοίξει απλώς το IDE Basic.

Σε Python

    ui = CreateScriptService("UI")
    ui.RunCommand("About")
  

    ui.RunCommand(".uno:BasicIDEAppear", "Document", "LibreOffice Macros & Dialogs", \
                  "LibName", "ScriptForge", "Name", "SF_Session", "Line", 600)
  

Στην Python είναι επίσης δυνατό να καλέσετε το RunCommand χρησιμοποιώντας ορίσματα λέξεων-κλειδιών:


    ui.RunCommand(".uno:BasicIDEAppear", Document = "LibreOffice Macros & Dialogs", \
                  LibName = "ScriptForge", Name = "SF_Session", Line = 600)
  
tip

Κάθε στοιχείο του LibreOffice έχει διαθέσιμο το δικό του σύνολο εντολών. Ένας εύκολος τρόπος για να μάθετε εντολές είναι να μεταβείτε στα Εργαλεία - Προσαρμογή - Πληκτρολόγιο. Όταν τοποθετείτε το ποντίκι σας πάνω από μια συνάρτηση στον κατάλογο Function (συναρτήσεις), θα εμφανιστεί μια επεξήγηση με την αντίστοιχη εντολή UNO.


SetStatusbar (*)

Εμφανίστε ένα κείμενο και μια γραμμή προόδου στη γραμμή κατάστασης του ενεργού παραθύρου. Οποιεσδήποτε επόμενες κλήσεις στην ίδια εκτέλεση μακροεντολής αναφέρονται στην ίδια γραμμή κατάστασης του ίδιου παραθύρου, ακόμα κι αν το παράθυρο δεν είναι πλέον ορατό. Μια κλήση χωρίς ορίσματα επαναφέρει τη γραμμή κατάστασης στην κανονική της κατάσταση.

Σύνταξη:

svc.SetStatusbar(text: str = '', percentage: int = -1)

Παράμετροι:

text (κείμενο): Ένα προαιρετικό κείμενο που θα εμφανίζεται μπροστά από τη γραμμή προόδου.

percentage (ποσοστό): ένας προαιρετικός βαθμός προόδου μεταξύ 0 και 100.

Παράδειγμα:

Σε Basic

      Dim i As Integer
      For i = 0 To 100
          ui.SetStatusbar("Progress ...", i)
          Wait 50
      Next i
      ' Επαναφέρει τη γραμμή κατάστασης
      ui.SetStatusbar
   
Σε Python

     from time import sleep
     for i in range(101):
         ui.SetStatusbar("Test:", i)
         sleep(0.05)
     ui.SetStatusbar()
   

ShowProgressBar

Εμφανίζει ένα μη αναγκαστικό πλαίσιο διαλόγου. Καθορίστε τον τίτλο του, ένα επεξηγηματικό κείμενο και ένα ποσοστό προόδου που θα αναπαρασταθεί σε μια γραμμή προόδου. Το παράθυρο διαλόγου θα παραμείνει ορατό μέχρι να κληθεί η μέθοδος χωρίς ορίσματα, ή έως ότου ο χρήστης κλείσει χειροκίνητα το παράθυρο διαλόγου.

Σύνταξη:

svc.ShowProgressBar(title: str = '', text: str = '', percentage: str = -1)

Παράμετροι:

title (τίτλος): Ο τίτλος που εμφανίζεται στην κορυφή του πλαισίου διαλόγου. Προεπιλογή = "ScriptForge".

text (κείμενο): Ένα προαιρετικό κείμενο που θα εμφανίζεται πάνω από τη γραμμή προόδου.

percentage (ποσοστό): ένας προαιρετικός βαθμός προόδου μεταξύ 0 και 100.

Παράδειγμα:

Σε Basic

      Dim i As Integer
      For i = 0 To 100
          ui.ShowProgressBar("Window Title", "Progress ..." & i & "/100", i)
          Wait 50
      Next i
      ' Κλείνει το παράθυρο της γραμμής προόδου
      ui.ShowProgressBar
   
Σε Python

     from time import sleep
     for i in range(101):
         ui.ShowProgressBar("Window Title", "Progress ... " + str(i) + "/100", i)
         sleep(0.05)
     # Κλείνει το παράθυρο της γραμμής προόδου
     ui.ShowProgressBar()
   

WindowExists

Επιστρέφει True εάν το δεδομένο παράθυρο μπορεί να αναγνωριστεί.

Σύνταξη:

svc.WindowExists(windowname: str): bool

Παράμετροι:

windowname (όνομα παραθύρου): δείτε τους ορισμούς παραπάνω.

Παράδειγμα:

Σε Basic

      If ui.WindowExists("C:\Document\My file.odt") Then
          ' ...
   
Σε Python

     if ui.WindowExists(r"C:\Document\My file.odt"):
         # ...
   

Παρακαλούμε, υποστηρίξτε μας!