Moi,
Miten saisin korjattua Java-softani pompputaudin? Kun päivitän taulukon sisällön, painan nappulaa tai vaihdan comboboxin arvoa, lomakkeen alareunassa oleva JPanel, jossa on JTable, pomppaa aina oikealle. En haluaisi aloittaa koodausta ihan alusta. Layouttina olen käyttänyt GridBagia ja NetBeansilla tehnyt.
Auttaisiko jokin setScreensize? Asiallisia vastauksia kiitos!
Miten saisin korjattua Java-softani pompputaudin? Kun päivitän taulukon sisällön, painan nappulaa tai vaihdan comboboxin arvoa, lomakkeen alareunassa oleva JPanel, jossa on JTable, pomppaa aina oikealle. En haluaisi aloittaa koodausta ihan alusta. Layouttina olen käyttänyt GridBagia ja NetBeansilla tehnyt.
Auttaisiko jokin setScreensize? Asiallisia vastauksia kiitos!
Vastaukset 6
Vanhimmat
Onko toi sun koodi/NB projekti ladattavissa jostain ? ^.^
Olisiko vinkkejä muuten?
miten sä asettelet ne komponentit GridBagLayout:tia käyttäen.....
antaa tietoo siitä miten ne olet LayoutManager:iin asetellu, muuten on vaikee antaa asiallisia neuvoja :)
1. Arvaus on jotain, et se JPanel joka sisältää JTable:n on lisätty siihen lomake komponenttiin GridBagConstraints.fill arvon ollessa joko HORIZONTAL tai BOTH ja gridwidth arvo on suurempi kuin 1 ja mikä on anchor arvo?
2. Ja mitä käytät sen JPanel komponentin LayoutManager:ina.
3. JTable asettaa LayoutManager:in null arvoon , sen sijaan käyttää CellRendererPane:a solujen piirtoon ja ylikirjoittaa doLayout() metodin joka tekee jotain monimutkasia juttuja :) tää oli tälläst ylimääräistä...
4. Ja kysymys, etkö tarvitse sarakkeita taulukossasi eli JHeaderia, jolloin sen JTable:n voisi kyllä sisällyttää JScrollPaneen?
Eli kysymykset on 1. 2. ja 4.
Teen NetBeansilla, joten JTable on siinä automaattisesti ScrollPanessa. Se piti sijoittaa Paneliin, koska muuten siitä näkyi vain yksi rivi jostain syystä. Achor on norteast.
Visuaalisella editorilla vai käsin? Visuaaliseen oon huono antaan neuvoja...
Kuitenkin kannattaa asettaa se JTable takaisin JScrolPanee ja ehkä sun ongelma kohta löytyy taulukon mallista jos käytät jotain omaa eli periytetty AbstractTableModel:sta niin laukaisetko TableModelEvent:tejä datan muuttuessa, kuten DefaultTableModel (niitä fireXXX metodeja).
Jos implementoit vain TableModel rajapinnan niin se on vaikeampaa.
Jos et käytä mitään omaa taulukko mallia, niin kait se vika on LayoutManager:is.
Tuosta sun lyhyestä vastauksesta ei nyt avautunu mitään mieleen, toivottavasti onnaa jotenki...