mobilná komunikácia - Vitajte na stránkach www.einsty.hostujem.sk
mobilná komunikácia - Vitajte na stránkach www.einsty.hostujem.sk mobilná komunikácia - Vitajte na stránkach www.einsty.hostujem.sk
P R O G R A M U J E M EAko ste si urèite všimli, zmenili sme iba poradie pre−chádzania vetiev. Teraz si však musíme zabezpeèi, aby saèasti obrazovky, ktoré sme u vykreslili, neprekres¾ovaliznovu. Môeme to urobi cez dodatoèný buffer, v ktorombudeme uchováva informácie o tom, èi u je bod vykres−lený, alebo nie. Ak na danej pozícii ešte nie je vykreslenýbod, môeme ho vykresli. Pri tejto metóde však na kadýpixel potrebujeme minimálne ïalší jeden prístup do pamä−te, èo by náš program spoma¾ovalo. Výhodnejšia budepouitie S−buffera:Vychádzame z predpokladu, e kadý polygón vykres−¾ujeme po riadkoch. Vytvoríme si špeciálny buffer, v kto−rom budeme uchováva vo¾né úseky na obrazovke. Prekadý jeden riadok budeme ma zoznam vo¾ných úsekov,pri ktorých budeme pozna, kde sa zaèínajú a kde konèia.Buffer by mohol vyzera takto:typedef struct{/*x1 bude uchováva zaèiatok vo¾ného úseku a x2 budeuchováva koniec vo¾ného úseku*/short x1[sirka_obrazovky],x2[sirka_obrazovky];/*premenná pocet bude uchováva poèet vo¾ných úsekov nadanom riadku*/short pocet;}line_buffer;/*Vytvoríme si buffer, ktorý bude pre kadý riadok uchová−va zoznam vo¾ných úsekov*/line_buffer free_l_buffer[vyska_obrazovky];Pred zaèatím vykres¾ovania polygónu si tento buffer vypl−níme potrebnými hodnotami:for(i=0;i
P R O G R A M U J E M Ev tomto prípade meno. Pôvodný kód teda doplníme o va−lidátor RequiredFieldValidator (v zdrojovom kóde zvýraz−nený hrubším fontom).void Kliknutie(Object Src, EventArgs E){Message.Text = “Vitaj “ + Name.Text;}RequiredFieldValidatorMeno: Najskôr si overíme fungovanie nášho prvého pouitéhovalidátora a potom sa vrátime k princípu a syntaxi. V prípa−de, e pouívate¾ nechá nevyplnené políèko Name, validá−tor vypíše varovný oznam: Zadaj svoje meno!RequiredFieldValidatorPrincíp èinnosti tohto validátora je ve¾mi jednoduchý.RequiredFieldValidator kontroluje neprázdnos zadáva−cieho po¾a.Všeobecný syntaktický predpis na pouitie Required−Field validátora je nasledujúci:CompareValidator. Tento validátor kontroluje zadanúhodnotu s referenènou, prípadne s hodnotou iného po−¾a. Notoricky známym a v praxi ve¾mi èasto pouívanýmpríkladom je overovanie hesla pri jeho zadaní, èi sme sanapríklad nedopustili preklepu, ktorý by nám mohol vbudúcnosti ve¾mi znepríjemni ivot. Všeobecný syntaktic−ký predpis na pouitie tohto validátora je nasledujúci:A teraz u avizovaný príklad s kontrolou zadaného hes−la, v ktorom vzájomne porovnávame dve zadané hodnoty:CompareValidatorZadaj heslo: Zopakuj heslo: Opisova princíp tejto stránky by bolo nosením drevado lesa, no podstatné je, e jej funkcionalitu má v tomtoprípade na starosti CompareValidator.Zatia¾ sme ukázali porovnanie hodnôt dvoch prvkovmedzi sebou. Èastým prípadom bude urèite aj porovnanieobsahu textového prvku s konštantou alebo s obsahompremennej. Týmto sa naša pozornos venovaná porovná−vaciemu validátoru nekonèí, pretoe ho budeme pravde−podobne pouíva ve¾mi èasto. Ukáeme si príklad „testo−vacej“ stránky, na ktorej môeme interaktívne precvièivšetky funkcie validátora.V záhlaví ASP.NET stránky sú pouité tri procedúry. Pro−cedúra Button_Click „zvidite¾ní“ rezultát validátora. Po−mocou procedúry Operator_Index_Changed nastavímepríslušný operátor ako parameter validátora a následnevalidátor aktivujeme. Nastavenie poadovaného dátovéhotypu a následnú aktiváciu validátora má na starosti pro−cedúra Type_Index_Changed.void Button_Click(Object sender, EventArgs e){// *************if (Page.IsValid) {lblOutput.Text = “Rovnost!”;}else {lblOutput.Text = “Nerovnost!”;}}void Operator_Index_Changed(Object sender, EventArgse){// **********************// Aktivuj validator pri zmene operatoraCompare1.Operator =(ValidationCompareOperator)ListOperator.SelectedIndex;CompareValidatorTestovacia stránka pre CompareValidatorCompare1.Validate();}void Type_Index_Changed(Object sender, EventArgs e){// **********************// Aktivuj validator pri zmene datoveho typuCompare1.Type =(ValidationDataType)ListType.SelectedIndex;Compare2.Type =(ValidationDataType)ListType.SelectedIndex;Compare1.Validate();}V tele stránky sú inicializované a naplnené dva prvkytypu ListBox, jeden na výber operátora a druhý na výberdátového typu.CompareValidatorRetazec 1:Porovnavaci operator:EqualNotEqualGreaterThanGreaterThanEqual LessThanLessThanEqual DataTypeCheckRetazec 2:
- Page 49 and 50: H A R D W A R EHP LaserJet3300 mfpT
- Page 51 and 52: S O F T W A R EApple DVD Studio Pro
- Page 53 and 54: S O F T W A R EMicrosoft Visual Stu
- Page 55 and 56: S O F T W A R ESkontrolujte si prav
- Page 57 and 58: Adobe Premiere 6Adobe Premiere je n
- Page 59 and 60: GAMESY / RECENZIADungeon SiegeToto
- Page 61 and 62: S O F T W A R ESharewarové okienko
- Page 63 and 64: S O F T W A R Eprièom DVD mechanik
- Page 65 and 66: S O F T W A R ETEST FTP KLIENTOV PR
- Page 67 and 68: S O F T W A R EUrèitú zásluhu na
- Page 69 and 70: S O F T W A R EPowerARCHIVER 2001 v
- Page 71 and 72: S O F T W A R EWORKING MORE PRODUCT
- Page 73 and 74: S O F T W A R EJe mu dovolené úpl
- Page 75 and 76: S O F T W A R EL I N U X N E W SSv
- Page 77 and 78: I N F O W A R E Itanium 2 prichádz
- Page 79 and 80: I N F O W A R EAko vybra správny i
- Page 81 and 82: I N F O W A R E200-333 MHz72-Bit Re
- Page 83 and 84: I N F O W A R Ektoré však ani dva
- Page 85 and 86: I N T E R N E Tborov, ktoré štand
- Page 87 and 88: I N T E R N E TSVETOM WWWS L O V E
- Page 89 and 90: S E R V I SNAJIADANEJŠIE CD TITULY
- Page 91 and 92: 6. èas: KEDY, KDE A AKO KÚPI POÈ
- Page 93 and 94: OTÁZKY A ODPOVEDE1. Mohli by ste m
- Page 95 and 96: S E R V I SSúa robotov na FEI STUS
- Page 97 and 98: S E R V I STipy a triky pre Windows
- Page 99: P R O G R A M U J E M E3D poèíta
- Page 103 and 104: P R O G R A M U J E M Ecp subor $(D
- Page 105 and 106: P R O G R A M U J E M Efor (int i=0
- Page 107 and 108: P R O G R A M U J E M EAssembler po
- Page 109 and 110: P R O G R A M U J E M ECONST RECT *
- Page 111: P R O G R A M U J E M EObr. 1Obr. 2
P R O G R A M U J E M Ev tomto prípade meno. Pôvodný kód teda doplníme o va−lidátor RequiredFieldValidator (v zdrojovom kóde zvýraz−nený hrubším fontom).void Kliknutie(Object Src, EventArgs E){Message.Text = “Vitaj “ + Name.Text;}RequiredFieldValidatorMeno: Naj<strong>sk</strong>ôr si overíme fungovanie nášho prvého pouitéhovalidátora a potom sa vrátime k princípu a syntaxi. V prípa−de, e pouívate¾ nechá nevyplnené políèko Name, validá−tor vypíše varovný oz<strong>na</strong>m: Zadaj svoje meno!RequiredFieldValidatorPrincíp èinnosti tohto validátora je ve¾mi jednoduchý.RequiredFieldValidator kontroluje neprázdnos zadáva−cieho po¾a.Všeobecný syntaktický predpis <strong>na</strong> pouitie Required−Field validátora je <strong>na</strong>sledujúci:CompareValidator. Tento validátor kontroluje zadanúhodnotu s referenènou, prípadne s hodnotou iného po−¾a. Notoricky známym a v praxi ve¾mi èasto pouívanýmpríkladom je overovanie hesla pri jeho zadaní, èi sme sa<strong>na</strong>príklad nedopustili preklepu, ktorý by nám mohol vbudúcnosti ve¾mi znepríjemni ivot. Všeobecný syntaktic−ký predpis <strong>na</strong> pouitie tohto validátora je <strong>na</strong>sledujúci:A teraz u avizovaný príklad s kontrolou zadaného hes−la, v ktorom vzájomne porovnávame dve zadané hodnoty:CompareValidatorZadaj heslo: Zopakuj heslo: Opisova princíp tejto stránky by bolo nosením drevado lesa, no podstatné je, e jej funkcio<strong>na</strong>litu má v tomtoprípade <strong>na</strong> starosti CompareValidator.Zatia¾ sme ukázali porov<strong>na</strong>nie hodnôt dvoch prvkovmedzi sebou. Èastým prípadom bude urèite aj porov<strong>na</strong>nieobsahu textového prvku s konštantou alebo s obsahompremennej. Týmto sa <strong>na</strong>ša pozornos venovaná porovná−vaciemu validátoru nekonèí, pretoe ho budeme pravde−podobne pouíva ve¾mi èasto. Ukáeme si príklad „testo−vacej“ stránky, <strong>na</strong> ktorej môeme interaktívne precvièivšetky funkcie validátora.V záhlaví ASP.NET stránky sú pouité tri procedúry. Pro−cedúra Button_Click „zvidite¾ní“ rezultát validátora. Po−mocou procedúry Operator_Index_Changed <strong>na</strong>stavímepríslušný operátor ako parameter validátora a následnevalidátor aktivujeme. Nastavenie poadovaného dátovéhotypu a následnú aktiváciu validátora má <strong>na</strong> starosti pro−cedúra Type_Index_Changed.void Button_Click(Object sender, EventArgs e){// *************if (Page.IsValid) {lblOutput.Text = “Rovnost!”;}else {lblOutput.Text = “Nerovnost!”;}}void Operator_Index_Changed(Object sender, EventArgse){// **********************// Aktivuj validator pri zmene operatoraCompare1.Operator =(ValidationCompareOperator)ListOperator.SelectedIndex;CompareValidatorTestovacia stránka pre CompareValidatorCompare1.Validate();}void Type_Index_Changed(Object sender, EventArgs e){// **********************// Aktivuj validator pri zmene datoveho typuCompare1.Type =(ValidationDataType)ListType.SelectedIndex;Compare2.Type =(ValidationDataType)ListType.SelectedIndex;Compare1.Validate();}V tele stránky sú inicializované a <strong>na</strong>plnené dva prvkytypu ListBox, jeden <strong>na</strong> výber operátora a druhý <strong>na</strong> výberdátového typu.CompareValidatorRetazec 1:Porov<strong>na</strong>vaci operator:EqualNotEqualGreaterThanGreaterThanEqual LessThanLessThanEqual DataTypeCheckRetazec 2: