-4

これが呼び出されたときにメインクラスにどのように干渉するのか疑問に思っていましたが、メインクラスを作成してファイナルで呼び出す適切な方法が見つかりませんでした。

 import java.awt.*;
  import java.awt.event.*;
import java.util.*;
 import java.io.*;
 import javax.imageio.*;
  import javax.swing.*;


 class Converter extends JFrame  implements 
 KeyListener, ItemListener, MouseListener {


//insert body here//    


@Override
        public void paintComponents (Graphics g)  {g.drawImage(icon.getImage(), 0, 20, 500,210, this);
        super.paintComponents (g);
        Color transparent = new Color (0, true);
        background.setBackground(transparent);
        repaint ();
        background.setVisible(true);
        pack();
        setContentPane(background);
        background.setLayout(new FlowLayout());

        add (background);
        }    
            }











  class ShowconverterFrame  {
     public static void main (String args []) {
        new Converter ();
        }
}

こんにちは、なぜこれが機能しないのかを理解しようとしています...どんな助けも大歓迎です! 「メインクラスが見つかりません」と返され、静的として宣言できません。この部品を本体に追加したところ、突然すべてが機能しなくなりました。イメージである JLabel を持つ JPanel を実装しようとしています。

4

1 に答える 1

0

さて、まず第一に、あなたの Converter クラスには他にもありますよね(後で編集: これを書いたとき、私はあなたが投稿した最初の長いコードを参照していました) ? これら 3 つのインターフェースのすべてのメソッドを実装しましたか? それらすべてが必要ない場合は、アダプターをご覧になることをお勧めします。リスナーとアダプターの違いについて説明するトピックは次のとおり です。リスナーとアダプターの違いは何ですか? . すべてのメソッドが必要でない場合に、オーバーライドするメソッドが非常に多くあるインターフェイスを多数実装するのは、かなり悪い習慣のように感じられます。

Converter クラスが完全に機能する場合、機能するエントリポイント クラスは次のようになります。

public class ShowconverterFrame  {
     public static void main (String [] args) {
        new Converter().setVisible(true);
     }
}

このコードを同じパッケージ内の別の .java ファイル (ShowconverterFrame.java という名前) に入れて実行します。また、IDE を使用していない場合、Netbeans は初心者にとって使いやすく、非常に役立ちます。:)

Aaand... シリアル バージョン ID には次の目的があります。serialVersionUIDとは何ですか。. ご覧のとおり、質問への回答とは何の関係もありませんが、知っておくとよいでしょう。

于 2013-05-05T02:14:20.257 に答える