java - How to get the NumPad layout -


i need layout numpad on keyboard. got of it, problem having "enter" button supposed till bottom. when use panel p4 , set south "enter" button not reach bottom. here code.

this like

enter image description here

this wanted

enter image description here

public class numpad extends applet {      public void init() {   setlayout(new borderlayout());    panel p1 = new panel();   p1.setlayout(new gridlayout(1, 0));   p1.add(new button("num"));   p1.add(new button("/"));   p1.add(new button("*"));   p1.add(new button("-"));   add(p1, borderlayout.north);    panel p2 = new panel();   p2.setlayout(new gridlayout(3, 0));   p2.add(new button("7"));   p2.add(new button("8"));   p2.add(new button("9"));   p2.add(new button("4"));   p2.add(new button("5"));   p2.add(new button("6"));   p2.add(new button("1"));   p2.add(new button("2"));   p2.add(new button("3"));   add(p2, borderlayout.center);          panel p4 = new panel();   p4.setlayout(new gridlayout(1, 0, 30, 40));   p4.add(new button("0"));   p4.add(new button("."));   add(p4, borderlayout.south);          panel p3 = new panel();   p3.setlayout(new gridlayout(2, 0));   p3.add(new button("+"));   p3.add(new button("enter"));   add(p3, borderlayout.east);        } } 

no need re-arrange everything, can simlpy nest p2 , p4 jpanel , add new panel in center. long don't add in south of "main" panel, go.

by way, don't use awt components, go directly swing ones. save lot of time , avoid troubling behaviour (consider extending japplet instead of applet)

see small example:

import java.awt.borderlayout; import java.awt.gridlayout;  import javax.swing.jbutton; import javax.swing.jframe; import javax.swing.jpanel; import javax.swing.swingutilities;  public class numpad extends jpanel {     public numpad() {         setlayout(new borderlayout());          jpanel top = new jpanel(new gridlayout(1, 0));         top.add(new jbutton("num"));         top.add(new jbutton("/"));         top.add(new jbutton("*"));         top.add(new jbutton("-"));         add(top, borderlayout.north);         jpanel p2p4 = new jpanel(new borderlayout());         jpanel p2 = new jpanel(new gridlayout(3, 0));         p2.add(new jbutton("7"));         p2.add(new jbutton("8"));         p2.add(new jbutton("9"));         p2.add(new jbutton("4"));         p2.add(new jbutton("5"));         p2.add(new jbutton("6"));         p2.add(new jbutton("1"));         p2.add(new jbutton("2"));         p2.add(new jbutton("3"));         p2p4.add(p2, borderlayout.center);          jpanel p4 = new jpanel();         p4.setlayout(new gridlayout(1, 0, 30, 40));         p4.add(new jbutton("0"));         p4.add(new jbutton("."));         p2p4.add(p4, borderlayout.south);         add(p2p4);         jpanel p3 = new jpanel();         p3.setlayout(new gridlayout(2, 0));         p3.add(new jbutton("+"));         p3.add(new jbutton("enter"));         add(p3, borderlayout.east);     }      public static void main(string[] args) {         swingutilities.invokelater(new runnable() {             @override             public void run() {                 jframe frame = new jframe(numpad.class.getsimplename());                 frame.setdefaultcloseoperation(jframe.exit_on_close);                 numpad numpad = new numpad();                 frame.add(numpad);                 frame.pack();                 frame.setvisible(true);             }         });     } } 

Comments

Popular posts from this blog

ios - UITEXTFIELD InputView Uipicker not working in swift -

Hatching array of circles in AutoCAD using c# -