A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

这是部分截图

1111.jpg (83.82 KB, 下载次数: 78)

部分截图

部分截图

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

4 个回复

正序浏览
温少邦 发表于 2012-7-15 09:40
lz这种写法应该是可以的
add方法继承自Frame类
但是报错说TextField参数不适应add(Component)方法

好的 谢谢
回复 使用道具 举报
lz这种写法应该是可以的
add方法继承自Frame类
但是报错说TextField参数不适应add(Component)方法
但是awt包里的TextField确实是Component的子类

最好发一下完整程序
看看有没有导错包
或者定义了别的TextField类
回复 使用道具 举报
本帖最后由 陆强强 于 2012-7-15 10:10 编辑

Frame要构造函数初始化,也不用自定义一个类来继承。放在主函数,或者自定义一个函数封装一下就好
class windows{
public static void main(String[]args){
launchFrame();
}

public static void launchFrame(){
         Frame   fra= new Frame("标准型计算器");    //这里Frame给他用构造函数初始化一下            
         fra.setBounds(550,240,265,255);
         JTextField jText=new JTextField("0");//我用的是swing的JTextField,不过一样
         jText.setColumns(20);
         jText.setHorizontalAlignment(JTextField.RIGHT );//这是设置文本从右边开始显示文字
         fra.add(jText);
         fra.setVisible(true);
   }
}
如果一定要自定义Frame类。那就自定义一个构造函数来调用
class Test {
public static void main(String[]args){
  
  new TFrame();
}

}
class TFrame extends Frame{
TFrame() {
  launchFrame();//自定义一个构造函数,调用launchFrame()来初始化
}
public  void launchFrame(){
        setTitle("计算器");
        setBounds(550,240,265,255);
       // setBlackground(Color.GRAY);//貌似没有这个方法。API文档没看到
        JTextField jText=new JTextField("0");
        jText.setColumns(20);
        jText.setHorizontalAlignment(JTextField.RIGHT );
        add(jText);
        setVisible(true);
}
}
回复 使用道具 举报
这个错误是:无效的编辑错误,你都没有通过那个类名调用,或者这对象调用add方法,而且你添加的的对象,都不知道你要把该对象添加到哪?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马