�����:   ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½:




�������
��������
�����
�����


Java
- �������
- ������-�����
- ������
- �������
- �����������
- ������
- IDE
- ������� ��������
- �������

��������� Java
- ����
- �������
- ������
- WAP, WML � ��.

JavaScript
- ������-�����
- �������
- ������

���-���������
- HTML
- CSS
- SSI

�������� ��� ���
�������
�����
������
���������
���� :)




Rambler's Top100

Java: ���������������� �������� ������� �������

���������� �������� ������� �������

����� 3.1 �� ���������� �������� �.�."������������� ����������� ������ �� Java 2"

� ������ ���������� ���������� �������� ������� �������:y=x, y=x2 � y=x3 �� ������� ���������� �������� ����������. ��� ���� ����� ������� ��������� ������, ��������� ��� �� ��������� �������������� �����������: ����������� ���� �� ������, ��������� ���� ���������, ��� � �������� ����� �������� ������� �����������. ������ �� �����, ���� ���������� ����� �������� �� ���� ��������, � ������ ���������, ������ ��� ���������� ����������� ������� ���� ������� �������, �� ������ � ������ ��� ���������������, � ������� ����� �������������� ����� ������� �������. ������� ���� ���������� ������������ �� ������� 1.


������� 1. ���� ���������� "���������� ������� �������"

������ �� ����� ��� ������ �������� ���� ���������� �������� ��������� �������, ������� 1 :

������� 1

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class DirPan extends JFrame 
{
PaintGraph pg; // ����� ������ ������� �������
ButPan bp; // ����� ����������� ��������� ������
RadPan rp; // ����� ������� �������
            public DirPan()
            {
            super("���������� ������� �������");
            Container c = getContentPane();
            c.setLayout(new BorderLayout()); // ��������� ��������� ����������
            pg = new PaintGraph(); // ������������� ������ ���������� ������� �������
            pg.setSize(600,430); // ������� ��������
            c.add(pg,BorderLayout.CENTER); // ������� ����������
            bp = new ButPan(pg); // ������������� ������ ������ ��������
            c.add(bp,BorderLayout.WEST);
            rp = new RadPan(pg); 
            c.add(rp,BorderLayout.NORTH);// ������������� ������ ������ ������� �������
            setSize(700,430); // ������� ��������
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // ������� ����������
                                                            // �������� ���� ��� ��������
            setVisible(true);
            }
  public static void main(String[] args)
 {
  new DirPan();
 }
}

������ ���������� ������ �����, ������ �� ��� ����������������. ����� ��� ��������������� ������� �������, �������� ������ ������, � ������� ������� ����� ���������� ��� ����� � ����, ����� � ������, ����������� � ��������� ��� ���������, ��������� - ����������� ���������� �������. ����� ���������� �� ���� ������ JPanel � ���������� ActionListener, � ������� �������� �������������� ������� "������� " ������. ����� ����������, ����� �� ����������, ����� ���� ����������� ��������, ���������� ���������� ����������, ������ ����������� �� ��������, �.�. ����������� ��� ���������.

������� 2. ����� ����������� ������

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class ButPan extends JPanel implements ActionListener
{
 private JButton jbt1,jbt2,jbt3,jbt4,jbt5,jbt6,jbt7,jbt8;
 PaintGraph pg;
 public void actionPerformed(ActionEvent e)
 {
  if (e.getSource().equals(jbt1))
  {
   if( pg.getNy()= = 5 ) jbt2.setEnabled( true );
   pg.setNy(pg.getNy() + 5);
   pg.repaint();
  }
  if (e.getSource().equals(jbt2))
  {
   pg.setNy(pg.getNy() - 5);
   pg.repaint();
   if(pg.getNy() = = 5) jbt2.setEnabled(false);
  }
  if (e.getSource().equals(jbt3)) 
  {
   if(pg.getKy() < 1 ) jbt4.setEnabled(true);
   pg.setKy(pg.getKy() - (float)0.1);
   pg.repaint();
   if(pg.getKy()<= 0.05) jbt3.setEnabled(false);
  }
  if (e.getSource().equals(jbt4))
  {
   if(pg.getKy() >= 0) jbt3.setEnabled(true);
   pg.setKy(pg.getKy() + (float)0.1);
   pg.repaint();
   if(pg.getKy() >= 0.95) jbt4.setEnabled(false);
  }
  if (e.getSource().equals(jbt5))
  {
   if(pg.getKx() <1;) jbt6.setEnabled(true);
   pg.setKx(pg.getKx() - (float)0.01);
   pg.repaint();
   if(pg.getKx() <=0.05) jbt5.setEnabled(false);
  }
  if (e.getSource().equals(jbt6))
  {
   if(pg.getKx() >0;) jbt5.setEnabled(true);
   pg.setKx(pg.getKx() + (float)0.01);
   pg.repaint();
   if(pg.getKx() >= 0.99) jbt6.setEnabled(false);
  }
  if (e.getSource().equals(jbt7))
  {
   if(pg.getHx() >=0.01) jbt8.setEnabled(true);
   pg.setHx( pg.getHx()+(float)0.01);
   pg.repaint();
   if(pg.getHx() >= 1) jbt7.setEnabled(false);
  }
  if (e.getSource().equals(jbt8))
  {
   if(pg.getHx() <=1) jbt7.setEnabled(true);
   pg.setHx( pg.getHx()-(float)0.01);
   pg.repaint();
   if(pg.getHx() <=0.01) jbt8.setEnabled(false);
  }
 }
 public ButPan(PaintGraph p)
 {
  setLayout(new GridLayout(8,1));// ��������� ���������� ��������� ����������
  pg=p ;
  jbt1 = new JButton("Scale -");
  jbt2 = new JButton("Scale +");
  jbt3 = new JButton("|^");
  jbt4 = new JButton("|_");
  jbt5 = new JButton("<�");
  jbt6 = new JButton("�>");
  jbt7 = new JButton("hx+");
  jbt8 = new JButton("hx-");
  jbt1.addActionListener(this);
  jbt2.addActionListener(this);
  jbt3.addActionListener(this);
  jbt4.addActionListener(this);
  jbt5.addActionListener(this);
  jbt6.addActionListener(this);
  jbt7.addActionListener(this);
  jbt8.addActionListener(this);
  add(jbt1);
  add(jbt2);
  add(jbt3);
  add(jbt4);
  add(jbt5);
  add(jbt6);
  add(jbt7);
  add(jbt8);
 }
}

� ���������� ������� �� ������, ��� ���������� ��������� �������, �������� ���������� ����, ������ ���������� ���������, ������� 2.


������� 2. ���������� ��������� ������� (������ ���������)

����� ������� ������� ������� ������� �� ���� ����� ������ ������������ � ������, ��� ������� ������� ���������� ����� setSw(int sw) ������ PaintGraph, �������� ��� �������. ������ ����� ���������� ����� �� ���� JPanel � ����������� � ������� ����� �������� ����, ������� �������� ����:

������� 3. ����� ������� ������� �������

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class RadPan extends JPanel implements ActionListener
{
 private JRadioButton jrb1,jrb2,jrb3,;
 private ButtonGroup bg;
 PaintGraph pg;
 public void actionPerformed(ActionEvent e)
 {
// ����������� �������� ��������� �������, � � ����������� �� ���� �������� ��� 
// ������� �������
  if (e.getSource().equals(jrb1)){
   pg.setSw(1) ;
   pg.repaint();// ����������� ������� �������
  }
  if (e.getSource().equals(jrb2)) {
   pg.setSw(2) ;
   pg.repaint();
  }
  if (e.getSource().equals(jrb3)) {
   pg.setSw(3);
   pg.repaint();
  }
 }
 public RadPan(PaintGraph p)
 {
  setLayout(new FlowLayout());
  pg=p ;
  jrb1 = new JRadioButton("�����",true);
  jrb2 = new JRadioButton("��������",false);
  jrb3 = new JRadioButton("���������",false);
  jrb1.addActionListener(this);
  jrb2.addActionListener(this);
  jrb3.addActionListener(this);
  bg = new ButtonGroup();
  bg.add(jrb1);
  bg.add(jrb2);
  bg.add(jrb3);
  add(jrb1);
  add(jrb2);
  add(jrb3);
 }
}

�����, ������� ������� ������ ������� �� ����� ����� ������� ��������� �� ��������� �����, ������ ��� �����������, � ������� ���������� ���������������� ���������� ����� ������. ������ ����� � ����� ������ paint(), � ������� ����������� �������� ����������� ����������, �������� ��� �������� ��� ���� ������� � ��������� �������, ���������� ������ �������� ������ �������, � ����������� �� ������ � ������� �����������. ������ ����� � ������, ������� ������ ������ �������. ��������� ����� � ������ setXXX(), getXXX(), � ������� ������� ����������� ������������, �.�. �������������� ������ ���������� ���������� ������ �� �������������������� ������� �� ������ �������. � ������ ������ ��������� ������� �������������� ���������, ����� ����� ������ ������� �������� ������� �������. ����� ����, � ����� � ���, ��� ����� ���� ����� ������������, ���������� ����������� � ���� ���������� ������ �������� � ������������� �������� �� � �� 0, ������ 0 � ������������� �������� �� ����� �, ��� ���� ���������� ����� ���� �� ��������.

������� 5. �����, ��������� ������� �������

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.lang.*;

public class PaintGraph extends JPanel
{
 private int ny , nx , oyn , oyk , oyx , oxn , oxk , oxy , ly , lx , sw , xln , l2;
 private    float xng , kx , ky , hx , yg , xk;

 public PaintGraph()
 {
  ny = 10;// ���� �������  �� ������
  ky = (float)0.5; // ���� ����� �� �
  kx = (float)0.5; // ���� ����� �� x
  oyn = 50; // ��������� ������ �� y
  oxn = 50 ; //��������� ������ �� �
  ly = 400; // ����� ��� �
  lx = 600; // ����� ��� �
  // �� ��������� � ������ �� ����� ��������� ������ y=x
  sw = 1; // ���� ��� ������������ ������� �������
  hx = (float)0.011;//��� ���������
 }

 public void paint(Graphics g)
 {
  super.paint(g);
  //��������� ������ ��� �� ��� ����� ��� �������� �������� ������ ���������
  // ��� Y
  g.drawLine( ( int ) ( lx * kx + oxn ) , oyn ,
              ( int ) ( lx * kx+ oxn ) , ly + oyn );
  // �������
  g.drawLine( ( int ) ( lx * kx + oxn) , oyn ,
              ( int ) ( lx * kx + oxn ) - 3 , oyn + 10 );
  g.drawLine( ( int ) ( lx * kx + oxn) , oyn ,
              ( int ) ( lx * kx + oxn) + 3 , oyn + 10 );
  // �������
  g.drawString( "Y" , ( int ) ( lx * kx + oxn) - 10 , oyn + 10 );
  g.drawString( "0" , ( int ) ( lx * kx + oxn ) - 10 , ( int) ( ly * ky+ oyn) + 10 );
  //�������
  int l1 = ( int ) (ly*ky);
  l2 = ly - l1;
  int k1 = ( int ) l1 / ny ;
  int k2 = ( int ) l2 / ny ;
  for ( int i = 1; i < k1 + 1 ; i++)
  {
   g.drawLine( ( int )(lx * kx - 2 + oxn) , l1 - ny+ oyn ,
               ( int ) ( lx * kx + 2+ oxn ) , l1 - ny+ oyn );
   l1 = l1 - ny ;
  }
  l1 = ly - l2;
  for ( int i = 1; i < k2 + 1 ; i++)
  {
   g.drawLine( ( int )(lx * kx - 2 + oxn) , l1 + ny+ oyn ,
               ( int )(lx * kx + 2+ oxn ) , l1 + ny+ oyn );
   l1 = l1 + ny ;
  }
  // ��� �
  g.drawLine( oxn , ( int ) ( ly * ky + oyn) , lx + oxn,  ( int ) ( ly * ky + oyn)  );
  g.drawLine( lx+ oxn , ( int ) ( ly * ky + oyn ) , lx+ oxn - 10 ,
                        ( int ) ( ly * ky + oyn) - 3 );
  g.drawLine( lx + oxn, ( int ) ( ly * ky + oyn) , lx+ oxn - 10 ,
                        ( int ) ( ly * ky+ oyn ) + 3 );
  // �������
  g.drawString( "�" , lx+ oyn -10 , ( int ) ( ly * ky+ oyn ) - 10 );
  // �������
  l1 = ( int ) ( lx * kx );
  l2 = lx - l1;
  k1 = ( int ) l1 / ny ;
  k2 = ( int ) l2 / ny ;
  for ( int i = 1; i <  k1 + 1 ; i++)
  {
   g.drawLine( l1 - ny + oxn ,( int ) ( ly * ky - 2+ oyn) ,
               l1 - ny + oxn , ( int ) ( ly * ky + 2 + oyn )  );
   l1 = l1 - ny ;
  }
  l1 = lx - l2;
  double xl = l1/ny;
  double xl1 = l2/ny;
  for ( int i = 1; i < k2 + 1 ; i++)
  {
   g.drawLine( l1 + ny+ oxn ,( int )(ly* ky - 2+ oyn) ,
   l1 + ny + oxn , ( int )(ly * ky + 2+ oyn )  );
   l1 = l1 + ny ;
  }
  // ����� ������ ��� ��������� �������
  switch (sw)
  {
   case 1 :
   funcLine(g);
   break;
 
   case 2 :
   funcPar(g);
   break;

   case 3 :
   funcGip(g);
   break;
  }
 }

 // ������ ������� �������� ������� �������
 // ����� �������� �����
 
 void funcLine(Graphics g)
 {
  xln = ( lx - l2 ) ;
  xk = 0 ;
  yg = 0;
  while(   ( xk + hx )  * ny < xln  &&  ( xk + hx )* ny < ly - ly * ky )
  {
   yg =  xk  ;
   g.drawLine( ( int ) ( xln - xk * ny+ oxn ) ,
               ( int ) ( ly * ky + yg * ny + oyn),
               ( int ) ( xln -  ( xk + hx ) * ny + oxn ),
               ( int ) ( ly * ky + ( xk + hx )  * ny )+ oyn) ;
   xk = xk + hx ;
  }
  xk = 0 ;
  yg = 0;
  while(   ( xk + hx )  * ny < l2 &&  ( xk + hx )  * ny < ly * ky )
  {
   yg =  xk  ;
   g.drawLine( ( int ) ( xln + xk * ny+ oxn ) ,
               ( int ) ( ly * ky - yg * ny+ oyn ),
               ( int ) ( xln +  ( xk + hx ) * ny+ oxn ),
               ( int ) ( ly * ky - ( xk + hx )  * ny  )+ oyn) ;
   xk = xk + hx ;
  }
 }

 // ����� �������� ��������
 void funcPar(Graphics g)
 {
  xln = ( lx - l2 ) ;
  xk = 0 ;
  yg = 0;
  int kp = 0;
  while( ( xk + hx ) * ny < xln && Math.pow ( xk + hx , 2 ) * ny < ly * ky )
  {
   g.drawLine( ( int ) ( xln - xk * ny + oxn ) ,
               ( int ) ( ly * ky - yg * ny  + oyn),
               ( int ) ( xln -  ( xk + hx ) * ny + oxn ),
               ( int ) ( ly * ky - Math.pow ( xk + hx , 2 ) * ny+ oyn) );
   xk = xk + hx ;
   yg = (float)Math.pow ( xk , 2 ) ;
   kp++;
  }
  xk = 0 ;
  yg = 0;
  while(  ( xk + hx ) * ny < l2 && Math.pow ( xk + hx , 2 )* ny < ly * ky )
  {
   yg = (float)Math.pow ( xk , 2 ) ;
   g.drawLine( ( int ) ( xln + xk * ny + oxn) ,
               ( int ) ( ly * ky - yg * ny + oyn),
               ( int ) ( xln +  ( xk + hx ) * ny+ oxn ),
               ( int ) ( ly * ky - Math.pow ( xk + hx , 2 )  * ny  )+ oyn) ;
   xk = xk + hx;
  }
 }
 // ����� �������� ���������
 void funcGip(Graphics g)
 {
  xk = 0 ;
  yg = 0;
  xln = ( lx - l2 ) ;
  while(   ( xk + hx ) * ny < xln && Math.pow ( xk + hx , 3 )* ny < ly - ly * ky )
  {
   yg = (float)Math.pow ( xk , 3 ) ;
   g.drawLine( ( int ) ( xln - xk * ny+ oxn ) ,
               ( int ) ( ly * ky + yg * ny + oyn),
               ( int ) ( xln -  ( xk + hx ) * ny+ oxn ),
               ( int ) ( ly * ky + Math.pow ( xk + hx , 3 )  * ny  )+ oyn) ;
   xk = xk + hx ;
  }
  xk = 0 ;
  yg = 0;
  while(  ( xk + hx ) * ny < l2 && Math.pow ( xk + hx , 3 )* ny < ly * ky )
  {
   yg = (float)Math.pow ( xk , 3 ) ;
   g.drawLine( ( int ) ( xln + xk * ny + oxn) ,
               ( int ) ( ly * ky - yg * ny + oyn),
               ( int ) ( xln +  ( xk + hx ) * ny+ oxn ),
               ( int ) ( ly * ky - Math.pow ( xk + hx , 3 )  * ny  )+ oyn) ;
   xk = xk + hx;
  }
 }
 // ������ getXXX(), setXXX() - �������
 public int getNx() {
  return nx;
 }
 public void setNx(int nx) {
  this.nx = nx;
 }
 public int getNy() {
  return ny;
 }
 public void setNy(int ny) {
  this.ny = ny;
 }
 public float getKy() {
  return ky;
 }
 public void setKy(float ky) {
  this.ky = ky;
 }
 public float getKx() {
  return kx;
 }
 public void setKx(float kx) {
  this.kx = kx;
 }
 public float getHx() {
  return hx;
 }
 public void setHx(float hx) {
  this.hx = hx;
 }
 public int getLx() {
  return lx;
 }
 public void setLx(int lx) {
  this.lx = lx;
 }
 public int getLy() {
  return ly;
 }
 public void setLy(int ly) {
  this.ly = ly;
 }
 public int getSw() {
  return sw;
 }
 public void setSw(int sw) {
  this.sw = sw;
 }
 public int getOyn() {
  return oyn;
 }
 public void setOyn(int oyn) {
  this.oyn = oyn;
 }
 public int getOxn() {
  return oxn;
 }
 public void setOxn(int oxn) {
  this.oxn = oxn;
 }
}

��� ���� �������� ����, ������ ������ ��������� �������� ������� ���������� � ������� ������ drawLine(), ������ ����� ���� ������������ � ������ ������ ������ Graphics �������� drawPlyline(), ������� ����� ���������� � ��������� ������.



������ � ��������� ������� ���������� �� ������ [email protected]

�����: ������� ����� ��������� ,
������ ������� ������������ ����,
�������� ����������� ����


����� ��. ����������
"Java: ��������� ����������"
���������>>
��������>>


�. �. �������
"���������������� �� Java. ���� ������"
���������>>
��������>>

����� � ��� �� �� ����� ���� ������ ������� ���.


[an error occurred while processing this directive]



Apache Struts 2.0.11
Apache MyFaces Trinidad Core 1.2.3.
Sun ��������� ��������� ���������� � Java ME �� Java SE
��������� �����!