首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示Java组件,但在Applet中不显示Swing组件。

显示Java组件,但在Applet中不显示Swing组件。
EN

Stack Overflow用户
提问于 2014-02-12 14:48:24
回答 1查看 507关注 0票数 0

我正在尝试运行一个非常简单的Java程序。当我使用AWT.Label组件时,我可以通过appletviewer看到该组件。我使用的代码是:

代码语言:javascript
复制
import java.applet.Applet;
import java.awt.Graphics;
import javax.swing.*;
import java.awt.*;

public class AppletTest extends Applet
{

  Label user = new Label("Username", Label.LEFT);

    public void paint(Graphics g) 
    {
     g.drawString("Registration Form", 195, 10);
    }

     public void init()
     {
       add(user);
     }

 }

当我使用swing.JLabel组件时,除了在顶部打印的注册表单外,我在屏幕上看不到任何组件:

代码语言:javascript
复制
import java.applet.Applet;
import java.awt.Graphics;
import javax.swing.*;
import java.awt.*;


public class AppletTest extends JApplet
{

  JLabel user = new JLabel("Username", JLabel.LEFT);

    public void paint(Graphics g) 
    {
     g.drawString("Registration Form", 195, 10);
    }

     public void init()
     {
       add(user);
     }

 }

有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-12 15:30:00

因为paintJApplet中的一个方法,所以当您重写它时,需要调用super.paint(g),这样父组件仍然可以完成它的绘制。您的paint方法应该更像这样:

代码语言:javascript
复制
@Override
public void paint(Graphics g) {
    super.paint(g);
    g.drawString("Registration Form", 195, 10);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21731213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档