i working on java project. i've created main frame desktop pane , several j internal frames. want center j internal frames. can give me suggestion how center ? thanks.
try logic. i'd done 1 jinternalframe.
import javax.swing.jframe; import javax.swing.jinternalframe; import javax.swing.jdesktoppane; import javax.swing.swingutilities; import java.awt.event.componentadapter; import java.awt.event.componentevent; import java.awt.component; public final class centerchild extends jframe{ private jdesktoppane contentpane; private jinternalframe child; @override public void frameinit(){ super.frameinit(); setvisible(true); setdefaultcloseoperation(jframe.exit_on_close); setbounds(0,0,500,500); this.selfinitialize(); } private void selfinitialize(){ contentpane = new jdesktoppane(); child = new jinternalframe("centered child"); child.setclosable(true); child.setvisible(true); child.setsize(300,200); //centering jinternalframe child.setlocation((getwidth() - child.getwidth())/2, (getheight() - child.getheight())/2); contentpane.add(child); this.setcontentpane(contentpane); addcomponentlistener(new resizeeventhandler()); } public static void main(string[] args) { swingutilities.invokelater(()->{ new centerchild();}); } //code re positions jinternalframe while main window size changes private class resizeeventhandler extends componentadapter{ @override public void componentresized(componentevent e){ component invoker = e.getcomponent(); //re positioning jinternalframe main window's center child.reshape((invoker.getwidth() - child.getwidth())/2, (invoker.getheight() - child.getheight())/2,300,200); } } }
Comments
Post a Comment