Menu

Mostra messaggi

Questa sezione ti permette di visualizzare tutti i messaggi inviati da questo utente. Nota: puoi vedere solo i messaggi inviati nelle aree dove hai l'accesso.

Mostra messaggi Menu

Messaggi - Sere

#1
Allora,guarda,i miei problemi iniziali erano che il programma che avevo scritto nn riusciva a riconoscere il click del mouse e che nn ero in grado di copiare ed incollare in modo oppurtuno i programmi che avevo scritto per disegnare le rette,gli ellissi e i rettangoli...ora grazie all'aiuto di benna sono riuscita a far sentire il click del mouse al mio programma ma cmq funziona male,nn fa quello che vorrei,nel senso che dovrebbe contornarsi di arancio il tasto che ho selezionato con un click interno ad esso del mouse e attivarsi la possibilità di disegnare le figure di cui ti ho detto prima nel resto del mio 'foglio' di lavoro...ma ovunque io clicki mi si contorna solo il tasto dell'ellisse e le figure nn riesco a disegnarle cmq...il main in questo programma nn c'è in quanto un applet -o almeno io so che è così che funziona- cmq il mio programma è scritto tutto sopra e c'è anche il programma che mi disegna ellissi che è uno di quelli che dovrei copiare all'interno di ProgrammaBis...cmq se poi hai bisogno che te lo rimando tutto basta che me lo dici e te lo riscrivo...cmq grazie!:o



Questo messaggio è stato aggiornato da Sere il 22/10/2007  alle ore  00:18:06
#2
Scusatemi,ho provato a modificare qlc sia sul programma come lo avevo scritto io che su quello che mi ha messo a disposizione benna ma nn riesco a risolvere i problemi...se vi venisse in mente qlc da suggerirmi è tutto ben accetto...grazie! :D :D
#3
Beh,innanzi tutto ti ringrazio x il programma...l'ho compilato e ho visto il probl di cui mi parlavi...ora provo a dargli un'occhiata...mi venisse un lampo di genio :D...cmq grazie x la grande disponibilità fin qui dimostrata...;)
#4
C'è qlc che puo' aiutarmi please?????:(
Sono disperata...vi prego datemi una mano...:o
#5
ops...che sbadata...grazie!da sola nn riuscivo proprio a notarle queste cose!!! :D
Senti,quindi mi consigli di eliminarlo AscoltaClick2 o devo proprio modificarlo?

Allora...ultime news...ho provato a modificarlo...vabbè,apparte che mi sono sbagliata a copiarti qui il programma,in realtà nn avevo ripetuto quel pezzo di programma...vabbè,piccola distrazione,sorry...:D
cmq si,dicevo,ho provato a togliere AscoltaClick2 ma funziona peggio di prima o meglio nn fa quello che dovrebbe!!!Scusami,nn uccidermi,ma come devo fare?Non riesco a risolvere sta cosa...non so che istruzioni devo mettere x poter fare quello che ti avevo descritto prima...puoi aiutarmi?Grazie mille ancora cmq!:o

Questo messaggio è stato aggiornato da Sere il 09/10/2007  alle ore  22:41:48
#6
ah capisco...apposta nn mi funzionava...:D
cmq mo ci provo,ma nel programma ellisse nn ho l'init...o sbaglio?

Io ci ho provato...ora mi compila finalmente ma nn funziona cmq...doh!
ti metto il programma così come l'ho copiato e incollato...spero tu riesca a capire dove sbaglio...

import javax.swing.JApplet;

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.Color;
import java.awt.Shape;
import java.awt.geom.Line2D;
import java.awt.geom.Point2D;
import java.awt.geom.Ellipse2D;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseMotionAdapter;
import java.lang.Math;
import java.awt.Font;
import java.awt.BasicStroke;

public class ProgrammaBis extends JApplet
{
private Shape [] scegliForma;
private Shape [] aggiungiRimuovi;
private Shape [] scegliColori;
private Shape [] contornoColori;
private Point2D.Double punto;
private Rectangle contorno;
private BasicStroke spessore;
private Ellisse[] ellisse;
private Ellipse2D.Double[] ellisse2;
private Line2D.Double lineaCorrente;
private int numEllissi;
private Point2D.Double inizio;
private String messaggio;
private BasicStroke tratteggio;
private BasicStroke continuo;
   
public void init()
{   
scegliForma = new Shape[6];
int b=0;
for(int i=0;i{
if(i<3)
{
scegliForma=new Rectangle (0,b,40,40);
b+=40;
}
if(i==3)
{
Point2D.Double   p1=new Point2D.Double(10,20);
Point2D.Double   p2=new Point2D.Double(30,20);
scegliForma=new Line2D.Double(p1,p2);
}
if(i==4)
{
scegliForma=new Ellipse2D.Double(5,50,30,20);
}
if(i==5)
{
scegliForma=new Rectangle (5,90,30,20);
}
}
aggiungiRimuovi=new Shape [2];
int a=0;
for(int i=0;i{
aggiungiRimuovi=new Rectangle (a,460,40,39);
a+=40;
}
aggiungiRimuovi=new Shape [2];
int a=0;
for(int i=0;i{
aggiungiRimuovi=new Rectangle (a,460,40,39);
a+=40;
}
contornoColori=new Shape [6];
int a1=264;
for(int i=0;i{
contornoColori=new Rectangle (a1,460,39,39);
a1+=39;
}
scegliColori=new Shape [6];
int a2=265;
for(int i=0;i{
scegliColori=new Rectangle (a2,461,38,38);
a2+=39;
}
spessore=new BasicStroke(3.0f);
ellisse=new Ellisse[100];
class AscoltaClick extends MouseAdapter
{
public void mousePressed(MouseEvent e)
{
int x=getX();
int y=getY();
if(x<=40)
{
if(y<40)
{
contorno=new Rectangle(0,40,40,40);
}
if(y>40 && y<80)
{
contorno=new Rectangle(0,80,40,40);
class AscoltaClick2 extends MouseAdapter
{
int x1=0;
int y1=0;
public void mousePressed(MouseEvent e)
{
if(numEllissi>=ellisse2.length)
return;
x1 = e.getX();
y1 = e.getY();
Point2D.Double p = new Point2D.Double(x1, y1);
inizio = p;
lineaCorrente = new Line2D.Double(inizio,p);
repaint();
}
public void mouseReleased(MouseEvent e)
{
if(numEllissi>=ellisse2.length)
return;
int x2 = e.getX();
int y2 = e.getY();
if (x2>=x1)
{
int l = x2-x1;
if (y2>=y1)
{
int h = y2-y1;
ellisse2[numEllissi] =new Ellipse2D.Double(x1,y1,l,h);
}
else
{
int h =(y1-y2);
ellisse2[numEllissi] =new Ellipse2D.Double(x1,y2,l,h);
}
}
else
{
int l=x1-x2;
if (y2>=y1)
{
int h = y2-y1;
ellisse2[numEllissi] =new Ellipse2D.Double(x2,y1,l,h);
}
else
{
int h =y1-y2;
ellisse2[numEllissi] =new Ellipse2D.Double(x2,y2,l,h);
}
}
numEllissi++;
lineaCorrente = null;
if(numEllissi==ellisse2.length)
return;
repaint();
}
}
class AscoltaMovimento extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e)
{
if(numEllissi>=ellisse.length)
return;
int x = e.getX();
int y = e.getY();
Point2D.Double p = new Point2D.Double(x, y);
lineaCorrente = new Line2D.Double(inizio,p);
repaint();
}
}
MouseAdapter ascoltaEventi = new AscoltaClick();
addMouseListener(ascoltaEventi);
MouseMotionAdapter ascoltaMosse=new AscoltaMovimento();
addMouseMotionListener(ascoltaMosse);
}
}
if(y>80 && y<120)
{
contorno=new Rectangle(0,120,40,40);
}
if(y>=460)
{
if(x<40)
{
contorno=new Rectangle(0,460,40,39);
}
if(x>40 && x<80)
{
contorno=new Rectangle(40,460,40,39);
}
if(x>=264 && x<303)
{
contorno=new Rectangle(264,460,39,39);
}
if(x>303 && x<342)
{
contorno=new Rectangle(303,460,40,39);
}
if(x>342 && x<381)
{
contorno=new Rectangle(342,460,40,39);
}
if(x>381 && x<420)
{
contorno=new Rectangle(381,460,40,39);
}
if(x>420 && x<459)
{
contorno=new Rectangle(420,460,40,39);
}
if(x>459 && x<498)
{
contorno=new Rectangle(459,498,40,39);
}
}      
repaint();
}
}
AscoltaClick mouse = new AscoltaClick();
addMouseListener(mouse);
}
public void paint(Graphics g)
{

Graphics2D g2 = (Graphics2D) g;
Graphics2D g3 =   (Graphics2D) g;
Graphics2D g4 = (Graphics2D) g;
Graphics2D g5 = (Graphics2D) g;
Graphics2D g6 = (Graphics2D) g;
Graphics2D g7 = (Graphics2D) g;

g2.clearRect(0,0,getWidth(),getHeight());        

for(int i=0; ig2.draw((Shape) scegliForma);         
for(int i=0; ig3.draw((Shape) aggiungiRimuovi);
g3.drawString("Agg",10,483);
g3.drawString("Rim",50,483);
for(int i=0; ig4.draw((Shape) contornoColori);         
            
g5.fill((Shape) scegliColori[0]);
g5.setColor(Color.white);
g5.fill((Shape) scegliColori[1]);
g5.setColor(Color.red);
g5.fill((Shape) scegliColori[2]);
g5.setColor(Color.blue);
g5.fill((Shape) scegliColori[3]);
g5.setColor(Color.green);
g5.fill((Shape) scegliColori[4]);
g5.setColor(Color.yellow);
g5.fill((Shape) scegliColori[5]);

g6.setColor(Color.orange);
g6.setStroke(spessore);
g6.draw((Shape)contorno);

g7.setColor(Color.blue);
g7.setStroke(continuo);
for(int i=0; ig7.draw((Shape) ellisse2);
g7.setColor(Color.black);
g7.setStroke(tratteggio);
if(lineaCorrente!=null)
g7.draw(lineaCorrente);
}
}

Scusa un'altra cosa ma xkè se clicco mi si contorna sempre e solo il tasto x l'ellisse?
:o

Questo messaggio è stato aggiornato da Sere il 06/10/2007  alle ore  15:51:21
#7
ok grazie...hai ragione,in effetti ho un paio di cose che ho chiamato elisse,ora l'ho modificato...anche se il programma nn va cmq a partire dal costruttore del programma ellisse...:(
nn so se ti ho fatto capire che intendo dire...
cmq grazie di nuovo x la tua immensa pazienza :)



Questo messaggio è stato aggiornato da Sere il 06/10/2007  alle ore  13:59:54
#8
Scusatemi,rieccomi,ma nn ci riesco con il copia-incolla...lo so,di sicuro so stupida io...sbaglierò delle cose assolutamente ovvie...ma ad esempio già nn so dove devo mettere il costruttore dell'ellisse...mi da una cifra di errori come ho fatto io...uffi...ma xkè sono così incapaceeee!!!! :(
vi prego nn uccidetemi,lo so che vi sto rompendo ma siete la mia unica salvezza!!!
#9
ok,vi ringrazio...domani ci provo...ora a quest'ora nn ce la faccio proprio...;)
Cmq di sicuro avrò ancora bisogno del vostro aiuto se sarete così gentili da darmi retta...cmq x risp alla vostra domanda...il programma me lo ha dato da fare una prof,è un'esercitazione ma nn ci capisco nulla come ben vedete...uff!è una cifra che ci sto impazzendo sopra...mah,se continuo così forse nn lo finirò mai...:o
vabbè,data l'ora notte a tutti!!! :D
#10
scusami benna,nn mi è molto chiaro,ci avevo già provato ma probabilmente sbaglio da qlc parte...puoi farmi vedere come devo fare x favore?
ti metto qui sotto uno dei programmi che devo aggiungere così mi è + chiaro e posso aggiungere anche gli altri...

import javax.swing.JApplet;

import java.lang.Math;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Point2D;
import java.awt.geom.Line2D;
import java.awt.geom.Ellipse2D;
import java.awt.Color;
import java.awt.Shape;
import java.awt.Font;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseMotionAdapter;
import java.awt.BasicStroke;


public class Ellisse extends JApplet
{
private Ellipse2D.Double[] ellisse;
private Line2D.Double lineaCorrente;
private int numEllissi;
private Point2D.Double inizio;
private String messaggio;
private BasicStroke tratteggio;
private BasicStroke continuo;
       
public Ellisse () {
ellisse = new Ellipse2D.Double[100];
numEllissi = 0;
continuo = new BasicStroke(3.0f);
tratteggio = new BasicStroke(1.0f,BasicStroke.CAP_BUTT,BasicStroke.JOIN_MITER,10.0f,new float[] {10.0f,10.0f},0.0f);                    
/** la classe interna AscoltaClick ascolta i click del mouse*/
class AscoltaClick extends MouseAdapter
{
int x1=0;
int y1=0;
public void mousePressed(MouseEvent e)
{
if(numEllissi>=ellisse.length)
return;
x1 = e.getX();
y1 = e.getY();
Point2D.Double p = new Point2D.Double(x1, y1);
inizio = p;
lineaCorrente = new Line2D.Double(inizio,p);
repaint();
}
public void mouseReleased(MouseEvent e)
{
if(numEllissi>=ellisse.length)
return;
int x2 = e.getX();
int y2 = e.getY();
if (x2>=x1)
{
int l = x2-x1;
if (y2>=y1)
{
int h = y2-y1;
ellisse[numEllissi] =new Ellipse2D.Double(x1,y1,l,h);
}
else
{
int h =(y1-y2);
ellisse[numEllissi] =new Ellipse2D.Double(x1,y2,l,h);
}
}
else
{
int l=x1-x2;
if (y2>=y1)
{
int h = y2-y1;
ellisse[numEllissi] =new Ellipse2D.Double(x2,y1,l,h);
}
else
{
int h =y1-y2;
ellisse[numEllissi] =new Ellipse2D.Double(x2,y2,l,h);
}
}
numEllissi++;
lineaCorrente = null;
                  
if(numEllissi==ellisse.length)
return;
repaint();
}
}
class AscoltaMovimento extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e)
{
if(numEllissi>=ellisse.length)
return;
int x = e.getX();
int y = e.getY();
Point2D.Double p = new Point2D.Double(x, y);
lineaCorrente = new Line2D.Double(inizio,p);
repaint();
}
}
MouseAdapter ascoltaEventi = new AscoltaClick();
addMouseListener(ascoltaEventi);
MouseMotionAdapter ascoltaMosse=new AscoltaMovimento();
addMouseMotionListener(ascoltaMosse);
}
public void paint(Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
g2.clearRect(0,0,getWidth(),getHeight());
g2.setColor(Color.blue);
g2.setStroke(continuo);
for(int i=0; ig2.draw((Shape) ellisse);

g2.setColor(Color.black);
g2.setStroke(tratteggio);
if(lineaCorrente!=null)
g2.draw(lineaCorrente);
}
}

questo è uno dei programmi che dovrei inserire...spero tu possa aiutarmi!!!
grazie cmq x la pazienza!! :D