簡體   English   中英

顯示Java Awt組件,但在Applet中不顯示Swing組件

[英]Java Awt components are displayed but Swing components are not displayed in Applet

我正在嘗試運行一個非常簡單的Java applet程序。 當我使用AWT.Label組件時,可以通過appletviewer看到該組件。 我使用的代碼是:

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組件時,除了打印在頂部的“注冊”表單,我看不到屏幕上的任何組件:

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);
     }

 }

有什么問題

因為paintJApplet的方法,當您重寫它時,您需要調用super.paint(g)以便父組件仍可以對其進行繪畫。 您的paint方法應該看起來像這樣:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM