المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : استفسار بسيط



mohamedmaerouf
19-12-2009, 12:31
فى داله timer in java
انا عملت برنامج فيه عربيه بتتحرك بس لما بتوصل لنهايه الفرامه مش بتظهر بعد كده تمام انا عايزها لما تصل لنهايه الفرامه تبدأ تانى من الاول
وده الكود

//in the name off allah

import javax.swing.*;
import java.awt.*;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.*;
public class racecar extends JFrame {



public racecar() {

setTitle("BMW");
add(new draw ());
}
public static void main(String[] args) {
racecar frame = new racecar();
frame.setLocationRelativeTo(null); // Center the frame
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOS E);
frame.setSize(400,250);
frame.setVisible(true);
}



}
// Draw in the panel
class draw extends JPanel {

int mohamed= 15 ;
Timer t = new Timer(90,new TimerClass());


protected void paintComponent(Graphics g){

t.start();

super.paintComponent(g);

g.fillOval(mohamed,190,10,10);
g.fillOval(mohamed+20,190,10,10);



g.setColor(Color.CYAN);
g.fillRect(mohamed-10,180,50,10);
g.setColor(Color.pink);

Polygon polygon = new Polygon();
int []x={mohamed ,mohamed+10,mohamed+20,mohamed+30};
int []y={180,170,170,180};
g.fillPolygon(x,y,x.length);


}
class TimerClass implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
mohamed+= 20;
repaint();

}
}


}

samer226047
11-01-2010, 00:26
بسم الله الرحمن الرحيم

للآسف أنا لا أعمل على لُغة جافا وليس لدي مُترجم COmpiler خاص بهذه اللُغة ولكن لاحظتُ شيئاً على الرماز Code الخاص بك وهو أنه لا يوجد آي شرط if في البرنامج الخاص بك لذلك

عليك قبل أن تبدأ عملية الرسم أن تضع شرط يتأكد هل السيارة في نهاية الشاشة أم لا وفي حال كانت الإحداثيات تُطابق نهائية الشاشة عند إذن تقوم بتصفير مُتحولات الإحداثيات

أتمنى أن أكون قد أفدت

أخوكم في الله : سامر