Promena vrednosti checkBox polja bez okidanja događaja OnClick

Svako dodeljivanje neke vrednosti checkBox osobini Checked okida i događaj OnClick. To, naravno, može ponekad biti vrlo nezgodno, tako da sam prionuo na rešavanje tog problema 🙂

Rešenje je dodeljivanje nove vrednosti na sledeći način:

{postavljanje kao potvrđeno}
tvojCheckBox.Perform(BM_SETCHECK, 1, 0);
{postavljanje kao nepotvrđeno}
tvojCheckBox.Perform(BM_SETCHECK, 0, 0);

i to bi bilo to…

Advertisements

Srpska slova u Adobe Flex, PHP, MySQL kombinaciji

Nisam ni slutio da će me pravilno rukovanje našim slovima ovoliko namučiti, ali evo i konačnog rešenja. Naime, kao bazu koristim MySQL, te je prvo tu trebalo izvršiti modifikacije. Iako sam postavio tabele da im charset bude utf-8, tak sam kasno primetio da su kolone ostale u latin1, koji mi nije prihvattao ČĆĐ. što znači da prvo treba proveriti da li su u MySQL-u i tabela i željena kolona u UTF-8 charsetu.

Kako koristim AmfPhp za povezivanje sa MySQL-om, bilo je potrebno podesiti i njega, jer sam shvatio da se u PHP-u podaci nepravilno obrađuju. Nakon par pokušaja, ustanovio sam da Gateway.PHP treba podesiti tako da se Charset Handler postavi na UTF-8

$gateway->setCharsetHandler("none", "UTF-8","UTF-8");

i kako je to dalo samo delimične rezultate, morao sam čeprkati dalje i time sam došao do konačnog rešenja, a to je da se nakon kreiranja konekcije na bazu postavi:

myset_charset('utf8', $rsConnectionID);

gde je $rsConnectionID identifikator konekcije.

I to je to. Radi 🙂

Pozicioniranje PopUp prozora u Flex-u

Danas sam i ja naišao na problem da PopUpManager ne pozicionira baš pravilno komponente. Problem nastaje kada se klik desio u nekoj komponenti aplikacije. Recimo, ja sam koristio komponentu sa umanjenim prikazom slike koja kada se klikne na nju prikazuje centrirano uvećanu sliku. Kako se u aplikaciji nalazi više komponenata na različitim pozicijama, to je i uvećan prikaz različito centriran. Rešenje je u sledećem:

import mx.core.Application;

private var uvecanaSlika:uvecanaSlikaKomponenta;

private function prikaziUvecano(event:MouseEvent):void
{
uvecanaSlika = new uvecanaSlikaKomponenta();
uvecanaSlika = uvecanaSlikaKomponenta(PopUpManager.createPopUp(DisplayObject(Application.application.parentDocument), uvecanaSlikaKomponenta, true));
PopUpManager.centerPopUp(uvecanaSlika);
}

Flex: Korišćenje Label komponente kao linka

Kada se label komponenta koristi kao link, poželjno je da se kursor iznad nje prikazuje u obliku šake sa ispruženim kažiprstom, kao što je to uobičajeno. Sama label komponenta ima osobinu useHandCursor, međutim, kada ju postavimo na true nema efekta. Stoga, umesto

< mx:label usehandcursor="true">

treba koristiti:

< mx:label usehandcursor="true" buttonmode="true" mousechildren="false" >

Znači, pored useHandCursor treba uključiti i buttonMode, a mouseChildren isključiti. Ovo funkcioniše i za neke druge komponente, ne samo za label.

strReplace() funkcija u Flex-u

Nakon pretraživanja neta za sintaksom strReplace() funkcije u Flex-u ispostavilo se da takva funkcija ne postoji kao sastavni deo AS3, ali sam našao rešenje koje stoga prenosim ovde:

private function strReplace( original:String, replace:String,
replaceWith:String):String
{
var array:Array = original.split(replaceWith);
return array.join(replace);
}

kako ne bih morao i sledeći put da ju tražim 🙂