RESIZE

11 отговора 290 прегледа
#1

RESIZE

class CmpAdapter extends ComponentAdapter {
public void componentResized(ComponentEvent evt) {
System.out.print("resezed!!!");
if (isTable){
table.sizeColumnsToFit(JTable.AUTO_RESIZE_ALL_COLUMNS);
table.setSize(new Dimension(800,600));
}
}
}

Искам когато си resize-nа прозореца да пропорционално да ми се resize-ва и таблицата. С горния код не става, къде бъркам?

Отговор
в отговор на j_fenka #2

Re: RESIZE

абе не съм голям УИ гуру, ама ми се чини че от КомпонентЕвент, който се подава на метода можеш да си вземеш новата големина и нея да сетваш за сизе
а не хард-кодната големина

Отговор
в отговор на j_fenka #3

Re: RESIZE

Какъв layout ползваш за тази таблица?

Отговор
в отговор на lngon #4

Re: RESIZE

GridBagLayout насекъде и сичко при мен е OK.

Отговор
в отговор на lngon #5

Re: RESIZE

XYLayout ми е

Отговор
в отговор на j_fenka #6

Re: RESIZE

абе вие не виждате ли кода или аз нещо бъркам ?

табле.сетСизе(блабла);

забива винаги статична големина на таблицата ....
а с ХУ лаиоут пък съвсем се наакава така

Отговор
в отговор на ches #7

Re: RESIZE

v ScrollPane mi e tablicata. Vaprosa mi e moje li avtomati4no da se resizne a ne da go vrazvam s hight i width na frame

Отговор
в отговор на j_fenka #8

Re: RESIZE

aмо ако не слагаш сизе ти, би трябва да си се ресиз-ва :)

Отговор
в отговор на j_fenka #9

Re: RESIZE

class CmpAdapter extends ComponentAdapter {
public void componentResized(ComponentEvent evt) {
if (isTable){
table.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
int h_pane=contentPane.getHeight()-110;
int w_pane=contentPane.getWidth()-30;
scrollPane.setSize(w_pane,h_pane);
}
}
}

Това е желания ефект, който постигнах благодарение на всички вас.
Благодаря!

И един последен въпрос, може ли с подобен код, обработващ събитието затваряне на прозорец да се RESIZE-ва прозорец:

protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}

Отговор
в отговор на j_fenka #10

Re: RESIZE

може разбира се, това че получаваш евент за затваряне, не значи че трябва да затваряш

Отговор
в отговор на ches #11

Re: RESIZE

protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}

s toq kod se zatvarq prozoreca, vaprosa mi e s podoben kod ima li na4in sa se RESIZE-va, nesto kato if (e.getID() == WindowEvent.WINDOW_RESIZE)
no estesveno az tova sam go probvala i ne varvi, kade e problema, zasto nqma WindowEvent.WINDOW_RESIZE pri polojenie 4e ima WindowEvent.WINDOW_CLOSING ????????????

Отговор
в отговор на j_fenka #12

Re: RESIZE

uha, kolko vyprositelni

oh, ti si tejyk sluchai .....

protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0); <---------------------------------------------------------- SPANK ME HARDER
}
}



protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
resizeMethodPls();
}
}

Отговор