-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
lao ce
aktív tag
faster, lenne egy kerdesem, szuksegem van a segitsegedre. kerulo megoldas is erdekel.
feladat:
csinalok egy formkitolto pilotot, hatter egy adott bitmap, foreground objektumok absolute pozicioban csucsulnek a megfelelo xy koordinatan, inaktiv grafikaval, mikor fokuszt kapnak akkor a keret atvaltozik 'rendes' editalhato kinezette, be lehet irni amit kell aztan lehet tovabbnavigalni (tab/enter/eger). adatbazisbol jon minden objektum neve, pozicioja, stb, szoval altalanos rutinok vannak/lesznek.
mivel a comboboxnak nem lehet atrajzolni a keretet, azt talaltam ki hogy 'rateszek' ugyanarra a poziciora egy editet a megfelelo kerettel es a combot letakarom vele mikor nincs epp rajta a fokusz. ha rakerul a focus az editre, akkor edit=hidden, combo=visible (es rafokuszalok). aztan a combo onchange-re atadom az erteket az editboxnak, majd mikor a focus elment a visibility-t visszacserelem (edit=visible, combo=hidden).
problema:
mikor a comborol elmegy a focus az uj objektumra, lefut a rutin ami a combot hidden-re allitja es az editboxot visible-ra, de ettol az uj editboxban a kurzor eltunik (a highlight is).
ez teljesen megakasztja a keyboardos bevitelt, mivel extrat kell kattintani az egerrel hogy visszakeruljon a kurzor a fokuszalt objektumra.
a tovabbi tabokra megy tovabb a fokusz a kovetkezo editre mintha 'mise tortent volna es minden rendben.
a kiserleteim eredmenye: ha hidden-re allitok egy objektumot ahol a fokusz VOLT az elozoekben (akar combo akar editbox), akkor az aktualisan fokuszalt objektum valahogy inaktivva valik. probaltam cselesen tovabbugralni a fokusszal par objektumon keresztul, de nem jott be.
van valami otleted?
itt a funkcio:
megjegyzes: a comboboxok nevei cmb-vel, a takaro editek cam (a kamuflazsbol) betukkel kezdodnek.
function aActivate (aObj) {
// deactivate
if (LastActiveObj != ''nothing'') {
if (LastActiveObj.name.substring(0,3)==''cmb'') {
// combobox: hide real combo and show editbox as a camouflage
LastActiveObj.style.visibility=''hidden'';
LastActiveObj = eval(''frmA.cam'' + LastActiveObj.name.substring(3,50));
LastActiveObj.style.visibility=''visible'';
} else {
// editbox
LastActiveObj.className = ''ina_'' + LastActiveObj.className.substring(4,20);
}
}
// activate
if (aObj.name.substring(0,3)==''cam'') {
// combobox: hide camouflage editbox and show combobox
aObj.style.visibility=''hidden'';
aObj = eval(''frmA.cmb'' + aObj.name.substring(3,50));
aObj.style.visibility=''visible'';
aObj.focus();
} else {
// editbox
aObj.className= ''act_'' + aObj.className.substring(4,50);
LastActiveObj=aObj;
}
}
[Szerkesztve]
Új hozzászólás Aktív témák
- Hobby gamer asztali gép RGB i5-114600/RTX 2060 12GB/32 GB RAM/500 GB NVMe
- Dell Latitude E6540 Erőmű akár Játékra is.15"6 FHD,I7 4800MQ,HD8790,16GBram,500GB sshd,gyári töltö
- HP ELITEBOOK 855 G8 Ryzen 3 5400U 16gb ram 256ssd FHD IPS Gari
- HP ELITEBOOK 850 G8 i5 1145G7/16GB ram 256ssd/FHD
- Újszerű Lenovo Legion 5 - 15,6"FHD IPS - Ryzen 5 5600H - 16GB - 512GB SSD - RTX 3050 - Win11 -MAGYAR
- Bomba ár! Dell Latitude E6530 - i5-3GEN I 4GB I 500GB I HDMI I 15,6" HD+ I W10 I Garancia!
- Eladó megkímélt állapotban levő Apple iPhone 13 Pro Max 128GB / AKKU 84% / 12 hónap jótállás
- 15,6" Dell Latitude laptopok: E6540, E5550, E5570, 5580, 5590, 5500, 5501, 5510/ SZÁMLA + GARANCIA
- IKEA Format lámpák eladóak (Egyben kedvezménnyel vihető!)
- ÁRCSÖKKENTÉS LG 24" full HD LED IPS monitor (HDMI, DSUB, jack) eladó
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest