java中,下列代码为什么没有在JFrame窗体中显示标签??

importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;classMyJDialogextendsJDia... import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

class MyJDialog extends JDialog { // 创建新类继承JDialog类
public MyJDialog(MyFrame frame) {
// 实例化一个JDialog类对象,指定对话框的父窗体、窗体标题和类型
super(frame, "第一个JDialog窗体", true);
Container container = getContentPane(); // 创建一个容器
container.add(new JLabel("这是一个对话框")); // 在容器中添加标签
setBounds(120, 120, 100, 100); // 设置对话框窗体大小
}
}

public class MyFrame extends JFrame { // 创建新类
public static void main(String args[]) {
new MyFrame(); // 实例化MyJDialog类对象
}

public MyFrame() {
Container container = getContentPane(); // 创建一个容器
setLayout(null);
JLabel jl = new JLabel("这是一个JFrame窗体"); // 在窗体中设置标签
// 将标签的文字置于标签中间位置
jl.setHorizontalAlignment(SwingConstants.CENTER);
container.add(jl);
JButton bl = new JButton("弹出对话框"); // 定义一个按钮
bl.setBounds(10, 10, 100, 21);
bl.addActionListener(new ActionListener() { // 为按钮添加鼠标单击事件
public void actionPerformed(ActionEvent e) {
// 使MyJDialog窗体可见
new MyJDialog(MyFrame.this).setVisible(true);
}
});
container.add(bl); // 将按钮添加到容器中

container.add(bl);
container.setBackground(Color.white);
setSize(200, 200);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setVisible(true);
}
}
new MyJDialog(MyFrame.this).setVisible(true);
中MyFrame.this什么意思???
展开
 我来答
脉旗老杨
2011-08-11
知道答主
回答量:8
采纳率:0%
帮助的人:6.8万
展开全部
this就是调用本身的意思
MyFrame.this好像就是调用MyFrame本身的意思吧

我也是新手,只懂皮毛而已
lyen20
2011-08-11 · TA获得超过315个赞
知道答主
回答量:88
采纳率:0%
帮助的人:41.8万
展开全部
j2se的都忘光了,,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式