java中编JFrame子类,谁能帮忙讲解一下如下每行代码?
答案:2 悬赏:0 手机版
解决时间 2021-12-03 15:02
- 提问者网友:战皆罪
- 2021-12-02 22:32
java中编JFrame子类,谁能帮忙讲解一下如下每行代码?
最佳答案
- 五星知识达人网友:罪歌
- 2021-12-02 23:37
setTitle(title);
设置标题,图片a1中的englishleaner所占的地方就是标题。
setLocation(x,y);
public void setLocation(int x,int y)
将组件移到新位置。通过此组件父级坐标空间中的 x 和 y 参数来指定新位置的左上角。
参数:
x - 父级坐标空间中新位置左上角的 x 坐标
y - 父级坐标空间中新位置左上角的 y 坐标
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
用来退出(主要是,有了它以后,退出就会彻底关闭程序,释放内存)的,效果等同于
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
MyJPanel frameContent = new MyJPanel();
这句肯定是存在一个类MyJPanel后才有的,不知道是不是你自己写的类,还是看别人的。
给一个这个类的推测吧。
public class MyJPanel extends JPanel{
public MyJPanel(){
}
}
Container visibleArea = getContentPane();
public Container getContentPane()
返回此窗体的 contentPane 对象
就是一个JFrame中除了边框的部分。
这句最好写成:
Container visibleArea = this.getContentPane();
this 是指MyJFrame。
这么写主要是使代码更好阅读。
visibleArea.add(frameContent);
就是把frameContent 加入到 visibleArea中。
frameContent.setPreferredSize(new Dimension(width,height));
这是在设置frameContent的首选大小,这主要是用来在没有给定大小(也就是加入到frameContent中的MyJPanel的对象没有加入组件,大小为0,此时,frameContent的大小也为0。)如果是括号中的情况,就选用这个给定的首选大小而不是0。当然,这里用0来表示大小不太适合,反正就是这么个意思。你在理解理解吧。
Dimension(width,height)就是一个给定了宽和高的矩形。
pack();
使得组件能够自己适应自己需要的大小。
frameContent.requestFocusInWindow();
使frameContent获得焦点,就相当于我们同时打开了两个程序A和B,当我们点到B时,焦点就在B上,而A就没有焦点。如果A请求(request)焦点(Focus),那么焦点就回到A。就相当于我们现在再重新点到程序A。
setVisible(true);
使的MyJFrame可见,系统默认的是不可见的,所以需要这一行来使得组件MyJFrame 可见。
当然这里的MyJFrame 是类,我们实际中是使得这个类的一个对象可见,但是在你给的代码中没有具体的对象,所以就用MyJFrame代指具体的对象。
设置标题,图片a1中的englishleaner所占的地方就是标题。
setLocation(x,y);
public void setLocation(int x,int y)
将组件移到新位置。通过此组件父级坐标空间中的 x 和 y 参数来指定新位置的左上角。
参数:
x - 父级坐标空间中新位置左上角的 x 坐标
y - 父级坐标空间中新位置左上角的 y 坐标
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
用来退出(主要是,有了它以后,退出就会彻底关闭程序,释放内存)的,效果等同于
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
MyJPanel frameContent = new MyJPanel();
这句肯定是存在一个类MyJPanel后才有的,不知道是不是你自己写的类,还是看别人的。
给一个这个类的推测吧。
public class MyJPanel extends JPanel{
public MyJPanel(){
}
}
Container visibleArea = getContentPane();
public Container getContentPane()
返回此窗体的 contentPane 对象
就是一个JFrame中除了边框的部分。
这句最好写成:
Container visibleArea = this.getContentPane();
this 是指MyJFrame。
这么写主要是使代码更好阅读。
visibleArea.add(frameContent);
就是把frameContent 加入到 visibleArea中。
frameContent.setPreferredSize(new Dimension(width,height));
这是在设置frameContent的首选大小,这主要是用来在没有给定大小(也就是加入到frameContent中的MyJPanel的对象没有加入组件,大小为0,此时,frameContent的大小也为0。)如果是括号中的情况,就选用这个给定的首选大小而不是0。当然,这里用0来表示大小不太适合,反正就是这么个意思。你在理解理解吧。
Dimension(width,height)就是一个给定了宽和高的矩形。
pack();
使得组件能够自己适应自己需要的大小。
frameContent.requestFocusInWindow();
使frameContent获得焦点,就相当于我们同时打开了两个程序A和B,当我们点到B时,焦点就在B上,而A就没有焦点。如果A请求(request)焦点(Focus),那么焦点就回到A。就相当于我们现在再重新点到程序A。
setVisible(true);
使的MyJFrame可见,系统默认的是不可见的,所以需要这一行来使得组件MyJFrame 可见。
当然这里的MyJFrame 是类,我们实际中是使得这个类的一个对象可见,但是在你给的代码中没有具体的对象,所以就用MyJFrame代指具体的对象。
全部回答
- 1楼网友:大漠
- 2021-12-03 01:15
看Java API文档,里面有注释。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯