السلام عليكم ورحمة الله وبركاته
دكتورتنا العزيزه وبينما هي تناضل في سبيل توصيل المعلومات الى ادمغتنا المكتظه
قررت من اللاشي تدينا سؤالين على قولتها" هايفه"!! والمشكله تكمن انو احنا لسى دوبنا نبغى نعرف نرسم دائره !!
ماابغى اطول السؤال كان نرسم spirograph بس لازم يكون فيه انترفيس يدخل فيه اليوزر رقمين اللي هما قطرين بالرسمه ويضغط على button اللي هوا draw وتطلع لو الرسمه
انا والله تعبت ع الكود وطبعن اغلبها من اجتهادات شخصيه بس برضوا ماطلع صح


ماعرفت كيف اربط button بالرسمه وكمان طبعن كيف يدخل
ودا الكود وطبعن مو كامل
كود PHP:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
import javax.swing.JOptionPane;
public class Spirograph extends JApplet implements ActionListener
{
JLabel label;
JButton d ;
JButton r1 ;
JButton r2 ;
JTextArea t;
BorderLayout bl;
JPanel panel;
//...........Construcot................
public Spirograph()
{ label= new JLabel("Spirograph");
label.setHorizontalAlignment(JLabel.CENTER);
//.............Draw Button............
d = new JButton("Draw !!");
d.setActionCommand("d");
d.addActionListener(this);
String z = JOptionPane.showInputDialog("r1: ");
int num1= Integer.parseInt(z);
num1.setActionCommand("e");
num1.addActionListener(this);
String y = JOptionPane.showInputDialog("r2: ");
int num2= Integer.parseInt(z);
num1.setActionCommand("f");
num1.addActionListener(this);
//...........JTextArea................
/* t=new JTextArea("Radues 1:");
t.setPreferredSize(new Dimension(100, 100));
panel.add(t);*/
//.........BorderLayout...............
bl = new BorderLayout();
bl.setHgap(5);
bl.setVgap(5);
getContentPane().add(label, BorderLayout.NORTH);
getContentPane().add(y, BorderLayout.EAST);
getContentPane().add(z, BorderLayout.WEST);
getContentPane().add(d, BorderLayout.SOUTH);
add(label, BorderLayout.NORTH);
add(d, BorderLayout.SOUTH);
add(z, BorderLayout.WEST);
add(y, BorderLayout.EAST);
} //end of Constructor.....
//Message handlers - don't worry too much at this stage.
public void actionPerformed(ActionEvent e)
{
if ((e.getActionCommand()).equals("d"))
if ((e.getActionCommand()).equals("e"))
if ((e.getActionCommand()).equals("f"))
}
//.......................
public static void main(String[]args)
{
JFrame frame= new JFrame();
frame.setTitle("draw Spirograph" );
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JApplet applet =new Spirograph();
applet.init();
frame.getContentPane().add(applet);
frame.setVisible(true);
frame.pack();
}
public void init()
{
panel =new SpiroPanel();
getContentPane().add(panel);
}
}
//....................SpiroPanel..................
class SpiroPanel extends JPanel {
int p=1000;
double r1=num1;
double r2=num2;
double x=70;
//.........Constructor.......................
public SpiroPanel() {
setPreferredSize(new Dimension(200,200));
setBackground(Color.white);
}
//..........PaintComponent..................
public void paintComponent(Graphics g)
{super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
g2.translate(200,200);
int x1=(int)(r1+r2-x);
int y1=0;
int x2,y2;
for(int i=0;i<p;i++)
{double s=i*Math.PI/90;
x2=(int)((r1+r2)*Math.cos(s)-p*Math.cos((r1+r2)*s/r2));
y2=(int)((r1+r2)*Math.sin(s)-p*Math.sin((r1+r2)*s/r2));
g2.drawLine(x1,y1,x2,y2);
x1=x2;
y1=y2;
}
}
}
والسؤال الثاني اللي الى الان مافكرنا فيه انو نفس الشي انترفيس عباره عن منيو يختار منها معادله ويدخل احداثياتها وطبعن المعادلات خطيه ومن الدرجه التانيه والثالثه ..!!!
المشكله مو انه الاسئله غريبه
المشكله انها تبغاها يوم الاحد وكل الكلام هذا ماشرحته؟؟!!
ع العموم بليز نبغى مساعدة اي احد فاهم لا يبخل علينا
ومشكورييييين مقدما