Juraj's profileYuraj's BlogPhotosBlogListsMore ![]() | Help |
Yuraj's BlogVitam Vás v mojom blogu! |
|||||||||||
|
|
May 13 6. Vytvárame jednoduché GUI (okno) v AutoIt-eTeraz si ukážeme ako jednoducho sa dá vytvoriť okno v AutoIt-e. Existuje mnoho už predefinovaných funkcií na vytváranie najbežnejších ovládacích prvkov. Síce existujú rôzne designeri okien (vôbec najznámejší Koda Form Designer, ukážka , existuje doň aj čeština), ktoré vám automatický vygenerujú kód. Tu je kód (+podrobne okomentovaný):
5. Niektoré funkcie v AutoIt-e
Toto je len veľmi málo funkcíí z AutoIt-u. Viac nájdete v návode… April 18 4. Makrá a funkcie v AutoIt-eAutoIt ma niekoľko makier, ktoré sú špeciálne premenné len na čítanie (hodnôt). Makro začína znakom @ namiesto $ pre lepšie odlíšenie. Zoznam všetkých predefinovaných makier, ktoré podporuje AutoIt nájdete v návode, tu je zopár : @AutoItExe – úplna cesta a názov exe z ktorého je skript spúšťaný. a mnoho iných užitočných makier… Napríklad: Takže zobrazí správu a pozdraví aktuálne prihláseného užívateľa systému. Poznámka: Ako som už v minule spomínal, & (and) slúži na spájanie reťazcov. FunkcieFunkcia je to časť kódu, ktorá môže byť volaná zo skriptu hocikedy a vykonáva určitú “funkciu”. AutoIt má vlastné vstavané funkcie a samozrejme, že môžete vytvárať aj vlastné funkcie. Zoznam AutoIt funkcií je v návode. Vlastné funkcieFunc nazovfunkcie ($parameter1, … $parameterN) Napríklad:
Toto je úplne to isté, ak by sme návratovú hodnotu funkcie uložili do premennej: #includeSlúži na pripojenie ďalšieho súbora (au3) k skriptu. Najlepšie je dávať #include na začiatok skriptu. #include "[cesta\]názovSúbora" – pripojí súbor, napr. #include “moje_funkcie.au3” 3. Podmienkové príkazy a cyklusy v AutoIt-eAko napríklad zistím, že jedno číslo je väčšie ako druhé? Alebo, obsahuje reťazec danú hodnotu? Podmienky sú vyhodnocované buď true (pravda;1) alebo false (nepravda;0). Podmienky používajú tieto operátory na porovnávanie: == , <> , >=, <=. 3 typy podmienk. príkazoch (najčastejšie používaný je If):
If … Then … [Else] … EndIfPríklad:
V ľudskej reči by to znamenalo: Pozn.: Else nie je nevyhnutné, môžete ho vynechať. Existuje aj skrateny zapis, ale iba pre jeden prikaz: If nieco Then prikaz Switch … Case … [Case Else] … EndSwitchPodobné ako viacnásobné if. Switch premenna .. case hodnotaN … EndSwitch. To zahŕňa nejakú hodnotu od (To) do. Switch <logický výraz>
CyklusyCyklus je to slučka, v ktorej sa časť skriptu opakuje podľa uvedenej podmienky.
For...NextTakto sa zapisuje, Step je voliteľné (defaultne je 1) je to vlastne hodnota, ktorou má byť každá slučka zväčšená. For <premenna> = <od> To <do> [Step <krok>]
While … WEndSlučka pokračuje dovtedy, kým výraz nevráti logickú hodnotu false. While <logický výraz> Poznámka: $i += 1 to je vlastne skrátený zápis: $i = $i + 1 Do … UntilPodobné ako While … WEnd akurát, že logický výraz je testovaný po vykonaný slučky. Do April 17 2. Premenné v AutoIt-ePremenné v AutoIt-e sú dosť podobné s php. Každá premenná musí začínať dolárovým znakom $. Názov premennej môže obsahovať len písmená a čísla alebo znak “_”. AutoIt automatický priradí typ premennej podľa priradenia :) . Premenná je to vlastne miesto na ukladanie dát v pamäti, takže môže byť pristupovaná rýchlo. Príklady názvoch premenných $premenna Varianty premenných v AutoIt-e:
Deklarovanie premennýchPremenné môžu mať deklarovaný obor platnosti, rozlišujeme tieto: Dim, Local, Global. Nie je nutný. Dim, local – lokálny obor platnosti, napr. vo funkcií. Global – globálny, napr. vo viacerých súboroch. Ak chcete zabezpečiť, aby ste v kóde zakázali vytvárať premenné bez deklarovania - na začiatku kódu vložte: Opt(“MustDeclareVars”,1) Príklady: Dim $premenna Existujú aj konštanty, to sú premenné, ktorých hodnota sa za behu skriptu nedá meniť. Proste raz, keď sú zadefinované, potom už nemôžu byť menené. Používate sa kľúčové slovo Const Napríklad: Const $PI = 3.14 ; Ludolfovo cislo PoliaPole obsahuje rád dátových prvkov rovnakého typu a veľkosti (alebo inak povedané rád premenných). Každý prvok v poli môže byť pristupovaný indexom (číslom). Index vždy začína od nuly. Napríklad: ; Vytvoríme pole Poznámka: Existujú aj viac rozmerové polia - matice. Max. 64 dimenzií. Napr. $tabulka[0][0] = 20 1. Hello World alebo Ahoj svet! v AutoIt-ePrípravaAk máme nainštalovaný AutoIt, tak môžme začať (nie je potrebné už nič nastavovať) :). Klikneme pravým tlačidlom na plochu (alebo v prieskumníku) a vyberieme Nový –> AutoIt v3 Script: Inštalačný program defaultne (budem používať tento výraz, z ang. znamená predvolene) nastavil, aby sa po dvojkliku na skript spustil. Preto, ak chcete upravovať skript, musíte pravým tlačidlom stlačiť na súbor a vybrať Edit Script; čiže zobrazí sa nasledovná ponuka: Otvorí sa SciTE editor so šablónou. Vymažte všetko. Teraz už môžeme začať. ZačínameHneď do prvého riadku vložíme tento príkaz: Stlačte F5 pre spustenie skriptu a zobrazí sa: Komentáre slúžia na dokumentáciu kódu a pre lepšiu prehľadnosť kódu – AutoIt rozlišuje dva typy komentárov:
Úvod do skriptovacieho jazyka AutoItČo je AutoIt?
Vlastnosti AutoIt-u
Oficiálny web: http://www.autoitscript.com Taktiež tu stiahnete najnovšiu verziu 3/.3.0.0/: Jednoduchá eurokalkulačka v C#Toto je starší kód, ktorý som dávnejšie vytvoril. Obsahuje veľmi jednoduchú triedu Eurokalkulacka, ktorá slúži na konverziu medzi SK<->€ /// <summary> /// Meny, SKK a EURO /// </summary> public enum Mena { Koruna, Euro } /// <summary> /// (Statická) Trieda služiaca na konverziu medzi menami SKK a EUROM /// </summary> static class Eurokalkulacka { /// <summary> /// Stanovený konverzný kurz /// </summary> private const double konverznyKurz = 30.126D; /// <summary> /// Konvertuje hodnotu na inú menu /// </summary> /// <param name="konverznaMena">Mena, na ktorú chcete premeniť danú hodnotu</param> /// <param name="hodnota">Hodnota, ktorá ma byť skonvertovaná na inú menu</param> /// <returns>Vráti desatinné číslo, skonvertovanú hodnotu</returns> public static double Konverzia(Mena konverznaMena, double hodnota) { if (konverznaMena == Mena.Euro) return hodnota / konverznyKurz; else return hodnota * konverznyKurz; } }Tu je aj príklad použitia (na dve desatinné miesta): //Vypise 451,89 SK : Console.WriteLine("{0:0.00} SK", Eurokalkulacka.Konverzia(Mena.Koruna, 15)); //Vypise 1,00 EUR : Console.WriteLine("{0:0.00} EUR", Eurokalkulacka.Konverzia(Mena.Euro, 30.126)); Ako vypočítať MD5 Hash v C#Užitočná metóda na vypočítanie MD5 Hashu reťazca (nezabudnite vložiť na začiatok kódu: using System.Security.Cryptography;): /// <summary> /// Vypocita MD5 Hash daneho retazca. /// </summary> /// <param name="text">Vstupny text.</param> /// <returns>Vrati MD5 Hash.</returns> static string ZistiMD5Hash(string text) { //Vytvorime novu instanciu objektu MD5CryptoServiceProvider //Pouzijeme using pre bezpecne uvolnenie instancie z pameti using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider()) { //Vypocitaj hash a vrat ho do byte pola byte[] bytePole = md5.ComputeHash(Encoding.Default.GetBytes(text)); //Vytvori instanciu objektu StringBuilder na skladanie retazcov/znakov StringBuilder strBuilder = new StringBuilder(); //Prejdi kazdy byte v poli, premen jednotlive bajty na hexadecimalnu hodnotu //a pridaj do strBuilder for (int i = 0; i < bytePole.Length; i++) { strBuilder.Append(bytePole[i].ToString("x2")); } //Vrat hash return strBuilder.ToString(); } } Porovnávať MD5 môžete jednoduchým spôsobom: if (ZistiMD5Hash("Reťazec") == "MD5 Hash") ... Samozrejme, že MD5 už nie je moderné (taktiež má svoje zraniteľnosti), ale dosť známe je aj SHA. January 22 Plagát .NET Framework 4.0V tomto plagáte nájdete nové veci ohľadom .NET Framework 3.5 SP1 a 4.0: http://blogs.msdn.com/brada/archive/2008/10/29/net-framework-4-poster.aspx |
|
|||||||||
|
|