
grid布局,好像就是用控件占位置吧,你就new 6个new JPanel(),依次add就可以了。
大小是自己变的,占满自己那个格。
--------------------------
JPanel jPanel=new JPanel();jPanelsetBackground(Colorgreen);
containeradd(jPanel);
JPanel panel_1 = new JPanel();
panel_1setBackground(ColorMAGENTA);
containeradd(panel_1);
JPanel panel_3 = new JPanel();
panel_3setBackground(ColorBLUE);
containeradd(panel_3);
JPanel panel = new JPanel();
panelsetBackground(ColorORANGE);
containeradd(panel);
JPanel panel_2 = new JPanel();
panel_2setBackground(ColorGRAY);
containeradd(panel_2);
JPanel panel_4 = new JPanel();
panel_4setBackground(ColorCYAN);
containeradd(panel_4);
JFrame
的默认布局管理器是BorderLayout,BorderLayout将容器(也就是JFrame)分成东
西
南
北
中
五个部分,向JFrame添加控件时BorderLayout默认将控件的位置设置为中间位置,所以你的设置不起作用
看了你的问题是想通过坐标控制控件,所以要将JFrame的布局管理器设置为绝度布局,即
mainFramesetLayout(null);将布局管理器设置为null
向其中动态添加文字有两种实现方式
1、是重写JPanel的paintComponent(Graphics
g)方法2、是动态添加JLabel
把java控件所在的容器(比如:JFrame,JPanel)的布局设为空布局。(比如:jpsetLayout(null); 然后用java控件的setBounds函数设置java控件的位置和大小。(比如:JTextField jtf=new JTextField(5); jtfsetBounds(100,100,30,20);//100,100是在容器中的相对位置坐标x和坐标y 30,20是Java控件的大小,30是长,20是高。) 我给你个Java语言的例子,你看看吧。 import javaxswingJButton;import javaxswingJFrame;public class B { B(){ JFrame jf=new JFrame(); jfsetLayout(null); JButton jb=new JButton("确定"); jbsetBounds(25, 20, 60, 20); jfadd(jb); jfsetSize(200,100); jfsetDefaultCloseOperation(JFrameEXIT_ON_CLOSE); jfsetVisible(true); } public static void main(String[] args) { new B(); }}运行结果:
Swing中没有提供直接获取的方法。
但是对于JFrame和JDialog,可以通过getContentPane()获取窗口的主面板,然后获得。
Container contentPane=myFramegetContentPane();// 注意只有窗口显示后getLocationOnScreen才可以调用,否则出错
Point contentPos = contentPanegetLocationOnScreen();// 在屏幕的坐标
Dimension size = contentPanegetSize(); // 可视区域的大小
要是你将JPanel组件直接放入设置了布局的JFrame中,肯定是不能设置大小的,只有当JFrame的布局为空时,才能设置组件的任意大小和位置,如下:
JFrame jframe=new JFrame();jframesetLayout(null);
JPanel jp=new JPanel();
iframeadd(jp);
jpsetBounds(200,250,100,150);//其中200,250表示组件所在的坐标,100,150表示组件
//的长和宽
问的有点模糊,你看是不是这个
import javaappletApplet;
import javaawtImage;
import javaawtGraphics;
public class MyApplet_16 extends Applet {
Image img;
//初始化方法
public void init() {
//加载gif格式图像文件
img=getImage(getCodeBase(),"飞机gif");
}
public void paint(Graphics g){ //绘图方法
//原大小显示
gdrawImage(img,10,10,this);
//获取尺寸
int w=imggetWidth(this);
int h=imggetHeight(this);
//缩小一半显示
gdrawImage(img,250,50,w/2,h/2,this);
//放大一倍显示
gdrawImage(img,160,160,w2,h2,this);
}
}
可以的话,将你的具体要求给个百度词条
以上就是关于Jframe jpanel gridlayout 位置大小问题!!!急求全部的内容,包括:Jframe jpanel gridlayout 位置大小问题!!!急求、Java Swing 设置Jpanel的大小位置以及动态在Panel内添加文字.、给在JPanel容器内的东西怎么设置位置和大小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)