Terve
Koitan asetella komponenttejä (JLabeleita ja JTextFieldejä) taulukkomaisesti siten, että seliteteksti on vasemmalla puolella ja tekstikenttä oikealla. Asettelu olisi tämän näköinen. Huomatkaa, että tekstikenttien tulee olla vaakasuorassa samassa tasossa, vaikka Googlen antama kuva ei sitä kerrokkaan.
Olisihan se helppo laittaa IDE:llä paikoileen, mutta näitä selite-tekstikenttä-yhdistelmiä voi tulla kymmenen tai yli sata.
Piirtäisin näitä for-silmukassa X verran ja sijoittaisin ne Y-elementtiin. Miten se mahtaisi onnistua?
SpringLayout varmaankin ratkaisee pulman.
Kiitos Metabolix, juuri tuollaista hain.
Nähtävästi Netbeansillä ei ole tukea tuolla SpringLayoutille, sitä ei voi siis käsitellä design-puolella. Lisäksi kun editori automaattisesti generoi koodia, jota ei voi muokata, en voi itse mennä koodiin laittamaan tarvittavia asioita.
GridBagLayout olisi myös hyvä, mutta en saa Netbeansissa asetettua sille konstruktoriin parametrejä riveistä ja sarakkeista. Elementit siis ladotaan samalle riville putkeen. Olisiko täällä jotain Netbeans-osaajaa, joka osaisi kertoa miten tuota voi muuttaa?
Macro kirjoitti:
Nähtävästi Netbeansillä ei ole tukea tuolla SpringLayoutille, sitä ei voi siis käsitellä design-puolella. Lisäksi kun editori automaattisesti generoi koodia, jota ei voi muokata, en voi itse mennä koodiin laittamaan tarvittavia asioita.
Joo, design-tila ei tue, mut voit lisätä custom-koodia sopiviin väleihin kun otat sieltä oikeasta laidasta, missä on Properties-Binding-Events-Code sen Code-välilehen.
Totta, mutta jos muutan koodia lisäämällä
elementti.setLayout(new SpringLayout());
se ei auta mitään, koska heti seuraavalla rivillä kutsutaan setLayout-metodia GroupLayoutilla, eikä sitä pääse muokkaamaan mistään.
Macro kirjoitti:
Totta, mutta jos muutan koodia lisäämällä -- se ei auta mitään, koska heti seuraavalla rivillä kutsutaan setLayout-metodia GroupLayoutilla
No onhan siinä ties kuinka monta niitä kohtia, mihin se antaa lisätä. Esim. "Post population code" tulee tuon IDE:n generoiman setLayoutin jälkeen.
Ai kappas. Nytpä tuo toimii hyvin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.