みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

シンボルが見つけられません。8個のエラー。

シンボルが見つけられません。

8個のエラーメッセージがでました。

何度も打ち直しましたが、これ以上減りません。

ドコが誤ってますか?

ご多忙中申し訳ありません。

ご回答の程、宜しくお願い申し上げます。



import java.applet.*;
import java.awt.*;
import java.util.*;

public class DigitalClock extends Applet implements Runnable {
Thread thread = null;
Image Digit[ ] = new Image[11];
int DigitWidth, DegitHeight;
Image WorkImage;
Graphics WorkGraphics;
int AppletWidth, AppletHight;
//初期化処理----------------------------------------------------
public void init() {
AppletWidth = getSize().width;
AppletHight = getSize().height;
WorkImage = createImage(AppletWidth, AppletHight);
WorkGraphics = WorkImage.getGraphics();
MediaTracker mediaTracker = new MediaTracker(this);
for(int i = 0; i < 11;i++) {
Digit[i] = getImage(getCodeBase(),"Image/" + i +".gif");
mediatracker.addImage(Digit[i],1);
}
try{
mediatracker.waitForID(1);
} catch (InterruptedException e) {
showStatus(""+e);
}
DigitWidth = Degit[0].getWidth(this);
DegitHeight = Digit[0].getHeight(this);
}
//アプレット開始-------------------------------------------------------
public void start() {
thread = new Thread(this);
thread.start();
}
//描画処理--------------------------------------------------------------
public void paint(Graphics g) {
g.drawImage(WorkImage, 0, 0, this);
}
//スレッド処理------------------------------------------------------------
public void run(){
while (thread != null) {
DispTime();
repaint();
try {
thread.sleep(100);
} catch(InterruptedException e) {
showStatus(""+e);
}
}
}
//描画更新処理再定義----------------------------------------------------------
public void update(Graphics g) {
paint(g);
}
//時間描画--------------------------------------------------------------------
void DispTime() {
//カレンダーオブジェクト作成
Calendar date = Calendar.getInstance(TimeZone.getTimezone("JST"));
int hour = date.get(Calender.HOUR);
int minute = date.get(Calender.MINUTE);
int second = date.get(Calendar.SECOND);
//作業グラフィックに描画
WorkGraphics.setcolor(color.white);
WorkGraphics.fillRect(0, 0, DigitWidth*8, DigitHight);
int h1 = hour / 10,
h2 = hour % 10;
WorkGraphics.drawImage(Digit[h1], 0,0, this);
WorkGraphics.drawImage(Digit[h2], DigitWidth*1, 0, this);
WorkGraphics.drawImage(Digit[10], DigitWidth*2, 0, this);
int m1 = minute / 10,
m2 = minute % 10;
WorkGraphics.drawImage(Digit[m1], DigitWidth*3, 0, this);
WorkGraphics.drawImage(Digit[m2], DigitWidth*4, 0, this);
WorkGraphics.drawImage(Digit[10], DigitWidth*5, 0, this);
int s1 = second / 10,
s2 = second % 10;
WorkGraphics.drawImage(Digit[s1], DigitWidth*6, 0, this);
WorkGraphics.drawImage(Digit[s2], DigitWidth*7, 0, this);
}
//アプレット停止
public void stop() {
thread = null;
}
}

投稿日時 - 2018-12-03 20:17:10

QNo.9564311

困ってます

質問者が選んだベストアンサー

どうやってJavaプログラムをコンパイルしているのか知りませんが、どこでエラーが起きているのかはコンパイルエラーのメッセージにちゃんと書かれているはずなんですがね。

全部は指摘しません。

> MediaTracker mediaTracker = new MediaTracker(this);

この変数はmediaTrackerとTを大文字で宣言しているのに

> mediatracker.addImage(Digit[i],1);

ここでは小文字のtになってしまっています。Javaのクラス名や変数名は大文字・小文字を区別しますから、これを打ち間違えると当然エラーになります。

大文字で書くべきところを小文字にしてしまっているところが他にも2ヶ所あります。

> Image Digit[ ] = new Image[11];
> DigitWidth = Degit[0].getWidth(this);

変数DegitはきっとDigitの打ち間違いですね。

> int DigitWidth, DegitHeight;

こちらもわざとやっているのでなければ、Degitと書いている部分は全てDigitに書き換えるべきでしょう。テキストエディタの置換機能を使うべし。

> int hour = date.get(Calender.HOUR);
> int minute = date.get(Calender.MINUTE);
> int second = date.get(Calendar.SECOND);

3行の間にCalenderとCalendarが混ざっています。

投稿日時 - 2018-12-03 22:43:39

お礼

質問が悪いのに、それでもご回答下さり

誠にありがとうございました。

投稿日時 - 2018-12-04 08:52:36

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

エラーが出たならエラー内容を書く。
略さない。自分の言葉で書かない。
エラー内容をそっくりそのまま書く。

自分で判断出来ないのだから、目の前のことを全て書く。
質問の鉄則です。

回答はしません。おかしなところが多すぎるので。

投稿日時 - 2018-12-04 06:02:05

お礼

ご指摘ありがとうございました。

投稿日時 - 2018-12-04 08:48:59

ANo.2

>8個のエラーメッセージがでました。

そのエラーメッセージは質問中のどこに書いてますか?
いい加減何度も同じ事書かせないでください。

投稿日時 - 2018-12-04 03:51:12

お礼

すみません。

投稿日時 - 2018-12-04 08:49:48

あなたにオススメの質問