Sovelluksessa ikkunalle tultaessa viedään tekstikenttään rivi, tämän jälkeen tehdään kaikenlaista ikkunan muilla komponenteille ja tekstikentän rivi ei ole valittuna (maalattuna).
Sitten lähetetään javaluokka dll:n kautta keskuskoneelle ja saadusta vastauksesta viedään tietoja sovelluksen dataolioon.
PLIM! Tekstikentän rivi onkin muuttunut valituksi.
Sen jälkeen kun tuo rivi on viety jTextFieldiin niin koko kenttään ei enää kosketa. Ei minkäänlaista hajua miksi näin tapahtuu. Ongelma toistuu myös toisella ikkunalla, mutta ei missään muualla. Kentän arvot on samat kuin muillakin ikkunoilla olevissa tekstikentissä.
Ongelmaa ei tapahdu kun sovellus käynnistetään IBM VisualAgeForJava:sta, mutta kun sovellus käynnistetään windowssissa niin tekstikenttä tulee valituksi. Onko virtuaalikoneessa vika vai mitä hä?
Sitten lähetetään javaluokka dll:n kautta keskuskoneelle ja saadusta vastauksesta viedään tietoja sovelluksen dataolioon.
PLIM! Tekstikentän rivi onkin muuttunut valituksi.
Sen jälkeen kun tuo rivi on viety jTextFieldiin niin koko kenttään ei enää kosketa. Ei minkäänlaista hajua miksi näin tapahtuu. Ongelma toistuu myös toisella ikkunalla, mutta ei missään muualla. Kentän arvot on samat kuin muillakin ikkunoilla olevissa tekstikentissä.
Ongelmaa ei tapahdu kun sovellus käynnistetään IBM VisualAgeForJava:sta, mutta kun sovellus käynnistetään windowssissa niin tekstikenttä tulee valituksi. Onko virtuaalikoneessa vika vai mitä hä?
Vastaukset 2
Vanhimmat
en ole varma mutta sen jälkeen kun olet asettanut tekstikentään arvon niin siirrä focus (jos javassa sellainen on) johonkin toiseen komponenttiin.
Mitä toi "tekstikenttä tulee valituksi" tarkoittaa käytännössä? Onko se focuksen siirtyminen vai ns. maalatuksi tuleminen?
Mutenkin toi kysymys on konaisuudessaan sellainen, että probleemiin on aika vaikea tarttua. Sen verran voin kuitenkin vinkata, että Swing-komponenteissa noi grafiikan päivitykset ovat hieman muuttuneet, joten näistä vastaaviin metodeihin (e.g. paintComponent) kannattaa tutustua.
Anyway, luulen ongelmasi kuitenkin johtuvan käyttämästäsi IDE-kehittimestä, joka saattaa muuttaa luokan oletusarvoja ennen käännöstä (tutustu JavaBean-tekniikkaan).
Suosittelen JCreator:ia sovelluskehityksen - ei IDE, mutta muuten Pirun hyvä.
-Jonttu-