0

嗨,我有一个 java 小程序。在 Eclıpse ıt 上完美运行并显示所有摆动项目,但当我将其嵌入到 html 时,小程序不显示或仅显示浏览器中的一些项目。下面是我的代码。有人可以帮我解决我的问题吗?

import java.applet.Applet;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.SwingConstants;

import java.applet.*;
import java.net.*;
public class TestApplet extends JApplet implements ActionListener {

    Button talkToAllButton;
    Button sendPhotoToAll;
    int Tikla1Basim, Tikla2Basim;
    JLabel header;

    JLabel statusLabel;
    JLabel posLabel;
    JLabel idLabel;
    JLabel iDLabel;
    JLabel heartRateLabel;
    JLabel heartRateLabel2;
    JLabel backgroundLabel;
    JButton sendPicButton;
    JButton talkOnOffButton;
    public void init() {

        this.setLayout(null);
        setSize(1200, 900);


        idLabel=new JLabel(new ImageIcon(getImage(getDocumentBase(), "res/call_sign.png")));
        idLabel.setFont(new Font("Serif", Font.BOLD, 20));
        idLabel.setBackground(Color.white);
        idLabel.setForeground(Color.black);
        idLabel.setOpaque(true);
        idLabel.setBounds(getWidth()-190,200,180,50);
        //idLabel.setBorder(border);
        add(idLabel);

        iDLabel=new JLabel("NONE",JLabel.CENTER);
        iDLabel.setFont(new Font("Serif", Font.BOLD, 20));
        iDLabel.setBackground(new Color(36,48,24));
        iDLabel.setForeground(Color.WHITE);
        iDLabel.setOpaque(true);
        iDLabel.setBounds(getWidth()-190,250,180,50);
        //iDLabel.setBorder(border);
        add(iDLabel);

        statusLabel=new JLabel(new ImageIcon(getImage(getDocumentBase(), "res/status_alive.png")));
        statusLabel.setFont(new Font("Serif", Font.BOLD, 20));
        statusLabel.setBackground(Color.green);
        statusLabel.setForeground(Color.black);
        statusLabel.setOpaque(true);
        statusLabel.setBounds(getWidth()-190,300,180,50);
        //statusLabel.setBorder(border);
        add(statusLabel);

        posLabel=new JLabel("NO DATA");
        posLabel.setFont(new Font("Serif", Font.BOLD, 20));
        posLabel.setHorizontalAlignment(SwingConstants.CENTER);
        posLabel.setBackground(Color.green);
        posLabel.setForeground(Color.WHITE);
        posLabel.setOpaque(true);
        posLabel.setBounds(getWidth()-190,350,180,70);
        //posLabel.setBorder(border);
        add(posLabel);

        heartRateLabel=new JLabel(new ImageIcon(getImage(getDocumentBase(), "res/hearth_rate.png")));
        heartRateLabel.setFont(new Font("Serif", Font.BOLD, 20));
        heartRateLabel.setBackground(Color.red);
        heartRateLabel.setForeground(Color.black);
        heartRateLabel.setOpaque(true);
        heartRateLabel.setBounds(getWidth()-190,450,180,50);
        //heartRateLabel.setBorder(border);
        add(heartRateLabel);

        heartRateLabel2=new JLabel("NO DATA",JLabel.CENTER);
        heartRateLabel2.setFont(new Font("Serif", Font.BOLD, 20));
        heartRateLabel2.setBackground(new Color(180,2,2));
        heartRateLabel2.setForeground(Color.WHITE);
        heartRateLabel2.setOpaque(true);
        heartRateLabel2.setBounds(getWidth()-190,500,180,50);
        //heartRateLabel2.setBorder(border);
        add(heartRateLabel2);

        sendPicButton=new JButton(new ImageIcon(getImage(getDocumentBase(), "res/send_pic.png")));
        sendPicButton.setFont(new Font("Serif", Font.BOLD, 20));
        sendPicButton.setBackground(Color.red);
        sendPicButton.setForeground(Color.black);
        sendPicButton.setOpaque(true);
        sendPicButton.setBounds(getWidth()-190,580,180,50);
        //sendPicButton.setBorder(border);
        add(sendPicButton);
        sendPicButton.addActionListener(this);

        talkOnOffButton=new JButton(new ImageIcon(getImage(getDocumentBase(), "res/talk_off.png")));
        talkOnOffButton.setFont(new Font("Serif", Font.BOLD, 20));

        talkOnOffButton.setOpaque(true);
        talkOnOffButton.setBounds(getWidth()-190,650,180,50);
        //talkOnOffButton.setBorder(border);
        add(talkOnOffButton);
        talkOnOffButton.addActionListener(this);
        //***********************************************************
        //isFpsLimited = true;
        backgroundLabel=new JLabel(new ImageIcon(getImage(getDocumentBase(), "res/bg.png")));
        backgroundLabel.setOpaque(true);
        backgroundLabel.setBounds(getWidth()-200,0,200,800);
        add(backgroundLabel);

        ImageIcon headerImg=new ImageIcon(getImage(getDocumentBase(),"res/erlink_header.png"));
        header=new JLabel(headerImg);
        header.setBounds(-45, -40, 1800, 200);

        add(header);
        sendPhotoToAll = new Button("Send Photo(All)");
        sendPhotoToAll.setBounds(850,40, 150, 50);
        header.add(sendPhotoToAll);
        talkToAllButton = new Button("Talk(All)");
        talkToAllButton.setBounds(850,90, 100, 50);
        header.add(talkToAllButton);

        sendPhotoToAll.addActionListener(this);
        talkToAllButton.addActionListener(this);
        /*sendPhotoToAll.setLocation(10, 10);
        sendPhotoToAll.setSize(150, 30);

        talkToAllButton.setLocation(10, 40);
        talkToAllButton.setSize(250, 30);*/

    }

    public void actionPerformed(ActionEvent event) { 
    //event things
    }
    // TODO overwrite start(), stop() and destroy() methods
}
4

1 回答 1

2
  1. 使用布局。
  2. validate()添加所有组件后调用。
  3. 在 EDT 上构建 GUI。有关更多详细信息,请参阅Swing 中的并发。
于 2012-07-04T20:34:51.727 回答