DCOP Funktioner |
forrige | Kommandoreference | næste |
DCOP kan kaldes på flere måder i Kommander. Den første er konsolmetoden
dcop kmdr-executor-@pid KommanderIf changeWidgetText minKontrol “ny tekst”
Dette antager at du er inde i en Kommander-fil og har adgang til specialen @pid, som indeholder procesID'et. Faktisk er de lettere at erstatte “kmdr-executor-@pid” med @dcopid. Du kan dog bruge denne syntaks (naturligvis uden specialerne), fra kommandolinjen eller et hvilket som helst eksternt script, for at ændre Kommander-vinduet.
Fordi Kommander ikke har en fuldstændig fortolker i sit alfastadium, hvis du vil bruge den meget hurtigere interne DCOP fra et andet applikationsvindue (konsol DCOP er meget langsomt) er det meget mere kompliceret fordi du skal give meget information, inklusive en prototype af kaldet. Det ovenstående kald ville blive til:
@dcop(@dcopid, KommanderIf, “enableWidget(QString, bool)”, Widget, true)
Da dette blev skrevet skulle man være klar over at indlejre DCOP-kald inde i scriptsprogstrukturer (som bash betyder at man skal bruge konsolmetodekald. Hvis du bruger interne DCOP-kld , vil alle Kommander-specialer blive udført først og dernæst scriptet.
Der er en ny og simpel måde at bruge DCOP på, i Kommander ved at bruge en objektsyntaks. Lad os sige at du vil ændre teksten i en kontrols navn @linjeEditor1. Det ville se således ud:
@LineEdit1.changeWidgetText(New text)
Som du kan se er den nye syntaks meget let, såvel som visuel konsistent med funktionsgrupper. Alle DCOP-referencer her vil bruge den nye objektsyntaks som vist ovenfor. Læg mærke til at hvis du refererer til en kontrol vh. DCOP fra et andet vindue eller en anden applikation, er den første parameter altid kontrollens navn. Alle funktioner der er vist her starter med den anden parameter.
Returnerer værdien af den specficerede globale variabel. Når et script køres inde fra Kommander-vinduet, vil alle (non-globale) variabler sat i dette script, holde op med at eksistere efter scriptet er kørt færdigt og vil derfor ikke være til rådighed for andre scriptprocesser eller i en ny instans af den kaldende proces. Det globale “virkefelt” betyder at variablen eksisterer for alle processer i vinduet indtil dette vindue lukkes. Du kan ændre disse variabler på et hvilket som helst tidspunk, med et nyt kald til @setGlobal
.
Opretter en variabel som er global for vinduesprocessen og tildeler værdien til den. Denne værdi kan hentes med global(QString variabelNavn) eller tildeles en ny værdi.
Dette skal omdøbes til setWidgetText og dette navn bliver sikker overflødiggjort. Det fjerner teksten der vises i kontrollen og erstatter det med den givne tekst.
Aktiverer eller deaktiverer en kontrol.
Returnerer teksten associeret med den angivne kontrol. Dette er ikke det samme den viste tekst. Det skulle laves sådan her: “@kontrolTekst” eller tekst og eller scripting brugt til at ankomme ved den viste værdi.
Den sætter Kommanders standard Text-streng. Den sættes typisk til “@widgeText” for at vise hvad der indtastes i kontrollen. Det er usandsynligt at du får behov for det, men hvis du gør er det her det foregår. Dette gælder for alle kontroller der kan indeholde data.
Tilføjer et element til en listebokskontrol ved det specificerede indeks. Listeindekset starter ved nul For at tilføje til slutinngen af en liste, bruges -1.
Dette tilføjer en liste af strenge på én gang. Listen skal afsluttes af EOL(\n - nye linjer). Dette er nyttigt eftersom du kan bruge bash til at hente listen ret smertefrit. F.eks. ved at bruge @exec(ls -l ~/projekter | grep kmdr) for elementer, giver dig en katalogudskrift af Kommander-filer i din projektmappe. Listeindeks starter ved nul. Brug -1 for at tilføje til slutningen af en liste.
addUniqueItem tilføjer et element til slutningen af listen, men kun hvis det er unikt.
Fjerner alle indgange.
Fjerner elementet ved det angivne indeks.
Returnerer elementets tekst ved det angivne indeks.
Sætter det aktuelle (eller markerede) element til det angivne indeks. Gælder for listefelt- og kombinationsbokskontroller.
Afkrydser eller fjerner afkrysdning i afkrydsningsfelt- og radioknapkontroller.
forrige | hjem | næste |
Specielle og indbyggede globale variable | op | At udvide Kommander |