Külső változó intervallumának leszűkítése2014-06-05T11:38:20+00:00

Radu.hu Fórum Kérdések az MQL4 programozási nyelvvel kapcsolatban Külső változó intervallumának leszűkítése

5 bejegyzés megtekintése - 1-5 / 5
  • Szerző
    Bejegyzés
  • ghipszjakab
    Tag
    Bejegyzések száma: 8

    Rákerestem, és nem találtam a fórumon hasonlót, ezért megkérdezem:

    Hogyan tudom azt megoldani, hogy egy külső változó csak megadott értékeket fogadjon el az Input ablakban? Magyarán valamilyen érvényesítési módszer érdekelne.

    Konkrétan ha Idő értékeket akarok ott beállítani (Óra, Perc, Másodperc) (ezeket egyenként Int típusú változóként) akkor azt szeretném, hogy az Óra rubrikánál csak 0-23, a percnél és másodpercnél pedig 0-59 legyenek az érvényes, és elfogadható értékek.

    Egy másik kérdés pedig az lenne, hogy miként oldhatom meg, hogy a Comment függvény használata során, sor törést is tudjak bevinni? Azaz új sorba is tudjak írni?

    Radulovic Attila
    Tag
    Bejegyzések száma: 646

    Az első kérdésedre a válasz:
    Sajnos ilyen korlátozásra nincs lehetőséged. A külső változók értékeit kordában tudod tartani a kódon belül, és módosítani is tudod, azonban ez nem lesz hatással a paraméterablak értékeire. Az régi MT4 változatban ez így van, az új MT4 változatban sem gondolom hogy van változás ezzel kapcsolatban.

    A második kérdésedre a válasz:

    Comment("Első sor\nMásodik sor\nHarmadik sor");
    

    Magyarul a \n sortörő karakterrel tudsz új sort kérni.

    ghipszjakab
    Tag
    Bejegyzések száma: 8

    Köszi a válaszokat, valahogy abból, hogy nem találkoztam én sem kész experttel amelyiknél valahogy limitálta volna már az Input ablakban a bevitelt, sejtettem, hogy nem lehet.

    mpeter
    Tag
    Bejegyzések száma: 38

    Szia! Találtam megoldást az első kérdésedre.

    #property script_show_inputs
    
    enum hourOfDay
    {
       H00,     // 0
       H01,     // 1
       H02,     // 2
       H03,     // 3
       H04,     // 4
       H05,     // 5
       H06,     // 6
       H07,     // 7
       H08,     // 8
       H09,     // 9
       H10,     // 10
       H11,     // 11
       H12,     // 12
       H13,     // 13
       H14,     // 14
       H15,     // 15
       H16,     // 16
       H17,     // 17
       H18,     // 18
       H19,     // 19
       H20,     // 20
       H21,     // 21
       H22,     // 22
       H23      // 23
    };
    
    enum minuteOfHour
    {
       M00,     // 0
       M01,     // 1
       M02,     // 2
       M03,     // 3
       M04,     // 4
       M05,     // 5
       M06,     // 6
       M07,     // 7
       M08,     // 8
       M09,     // 9
       M10,     // 10
       M11,     // 11
       M12,     // 12
       M13,     // 13
       M14,     // 14
       M15,     // 15
       M16,     // 16
       M17,     // 17
       M18,     // 18
       M19,     // 19
       M20,     // 20
       M21,     // 21
       M22,     // 22
       M23,     // 23
       M24,     // 24
       M25,     // 25
       M26,     // 26
       M27,     // 27
       M28,     // 28
       M29,     // 29
       M30,     // 30
       M31,     // 31
       M32,     // 32
       M33,     // 33
       M34,     // 34
       M35,     // 35
       M36,     // 36
       M37,     // 37
       M38,     // 38
       M39,     // 39
       M40,     // 40
       M41,     // 41
       M42,     // 42
       M43,     // 43
       M44,     // 44
       M45,     // 45
       M46,     // 46
       M47,     // 47
       M48,     // 48
       M49,     // 49
       M50,     // 50
       M51,     // 51
       M52,     // 52
       M53,     // 53
       M54,     // 54
       M55,     // 55
       M56,     // 56
       M57,     // 57
       M58,     // 58
       M59      // 59
    };
    
    //--- input parameters
    input hourOfDay H; // Óra
    input minuteOfHour M; // Perc
    input minuteOfHour S; // Másodperc
    
    int h;
    int m;
    int s;
    void OnStart()
    {
       h = H;
       m = M;
       s = S;
    }
    
    Radulovic Attila
    Tag
    Bejegyzések száma: 646

    Igen, ez valóban jó megoldás. Én túlságosan a régi mt4 szolgáltatási körében gondolkodtam:)

    Köszönjük, mpeter!

5 bejegyzés megtekintése - 1-5 / 5

A hozzászóláshoz jelentkezz be!

Adhatok Neked még több ingyenes tartalmat?

Értesítelek hetente megjelenő új tartalmaimról.

Hozzájárulok, hogy az adatvédelmi nyilatkozat szerint biztonságosan kezeld megadott adataimat, valamint hasznos anyagokat és egyedi ajánlatokat küldj nekem termékeiddel, szolgáltatásaiddal kapcsolatban e-mailben