Премини към съдържанието

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

downtown1

Не мога да разбера каква е грешката

Препоръчан отговор


import java.awt.Graphics; import java.awt.Image; import javax.swing.JApplet; public class shark extends JApplet { Image bgi, fgi; public void init() { bgi=getImage(getCodeBase(),"sea.jpg"); fgi=getImage(getCodeBase(),"shark.png"); } int x=0; int y=20; int dx=5; public void paint (Graphics g) { g.drawString("Under water",5,15); while(y<300) { g.drawImage(bgi,0,20,this); g.drawImage(fgi,x,y,this); for (int i=0,i<10000,i++);  <-- дава ми грешка на този ред (  ; expected)  x+=2*dx; y+=dx; repaint(); } } }

Защо иска да сложа точка и запетая след като вече си има?

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

for (int i=0,i<10000,i++);  <-- дава ми грешка на този ред (  ; expected) 

Привет !

 

Дава Ви грешка, защото синтаксиса на оператора for е сгрешен !

for (int i=0;i<10000;i++) {

  //Многоредово тяло на цикъла

}

 

ИЛИ 

 

for (int i=0;i<10000;i++)

 // едноредово или блок-структурирано тяло на цикъла

 

Моля, прочетете как се използва for цикъла ;) !

 

Поздрави !

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Не знам Java, но все пак си мисля, че тази точка и запетая не трябва да е там (реда с грешката) и че твърденията на for цикъла трябва да са оградени с фигурни скоби. P.S. Изпревариха ме...

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Ами опитах се да го променя така:

for (int i=0,i<10000,i++){ x+=2*dx; y+=dx; repaint();

}

 

Пак ми излиза същата грешка :huh:

Можете ли да ми кажете как да оправя кода, така че да тръгне програмата?

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
import java.awt.Graphics;import java.awt.Image;import javax.swing.JApplet;public class shark extends JApplet {	Image bgi, fgi;	public void init() {		bgi = getImage(getCodeBase(), "sea.jpg");		fgi = getImage(getCodeBase(), "shark.png");	}	int x = 0;	int y = 20;	int dx = 5;	public void paint(Graphics g) {		g.drawString("Under water", 5, 15);		while (y < 300) {			g.drawImage(bgi, 0, 20, this);			g.drawImage(fgi, x, y, this);			for (int i = 0; i < 10000; i++) {				x += 2 * dx;				y += dx;				repaint();			}		}	}}

Заповядайте ! За съжаление едва сега забелязах, че съвсем е объркан for цикъла - вместо ";" за раздели на инициализиращия, проверяващия и коригиращия блок на for цикъла, сте използвал запетая, което е грешно. Също така, поради недоброто форматиране, липсваше и затварящата скоба ("}") за дефиниция на класа.

P.S. Изпревариха ме...

Обещавам повече да не правя така  :ph34r: !


Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Аз ви предлагам първо да понаучите малко синтаксиса на Java и след това да се забивате със създаването на graphic interface.  

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Здравейте отново, за да не отварям нова тема ще питам тук.

Защо когато направя някакъв аплет и го пусна компилатора ми го показва, но ако в аплета има нещо, което се движи ми излиза само бял екран?

Ето кода:

 

import java.awt.Color; import java.awt.Graphics; import javax.swing.JApplet; public class CircleMoves extends JApplet {    int x=20, y=10, r=20, dp=10;    public void init() {       this.setSize(800,600);    }    public void paint(Graphics g){

      g.drawString("Търкаляща се топка",5,10);       g.setColor(Color.RED);       g.fillOval(x, y, r, r);

 

 

      for(int j=0;j<100000000;j++);

 

      while ((x<600+r)&&(y<400+r)){

         g.clearRect(0, 0, 600, 400);

         x+=dp;          y+=dp;          r+=dp/2;       }    } }

 

 

Ако има значение използвам NetBeans.

Когато премахна while цикъла всичко си е наред и кръга се показва, но когато го оставя ми показва празен аплет.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.