Visualizzazione dei risultati da 1 a 10 su 13

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2014
    residenza
    Padova
    Messaggi
    361
    Quote Originariamente inviata da spino8 Visualizza il messaggio
    Ho provato entrambe le soluzioni:

    - la prima trovo difficoltà a gestire il layout..vorrei potere definire delle coordinate a mio piacimento e non ce la faccio.


    - nel secondo mi risulta difficile trovare le coordinate , cioè definisco un X e y dell immagine, ma poi non riesco a renderle complementari a quelle del punto cliccato tramite actionlistener

    Il fatto è che di solito voler definire delle coordinate a proprio piacimento, ad esempio settando il layout a null e utilizzando i metodi setBounds() etc., è un metodo che alla lunga non paga, ci sono layout molto semplici da utilizzare, e usando in modo appropriato le distanze tra i componenti dei layout e i bordi puoi ottenere in modo semplice un'infinità di situazioni diverse.

    Per quanto riguarda il secondo metodo, se registri un listener sul pannello ottieni le coordinate relative al pannello.
    Il punto cliccato lo trovi con il metodo getPoint() applicato al MouseEvent del mousePressed (MouseEvent e).
    Il punto di partenza dell'immagine lo conosci già, perché la fai partire da quelli che hai chiamato xs e ys. A quel punto basta controllare che la x e la y del punto siano maggiori di xs e ys e minori di xs+miaImmagine.getWidth() e ys+miaImmagine.getHeight().

    Ovviamente senza vedere più codice non ci si può rendere conto della situazione, se hai modo/voglia posta più codice e provo a dirti come risolverei io la cosa.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2016
    Messaggi
    8
    Quote Originariamente inviata da Ansharja Visualizza il messaggio
    Il fatto è che di solito voler definire delle coordinate a proprio piacimento, ad esempio settando il layout a null e utilizzando i metodi setBounds() etc., è un metodo che alla lunga non paga, ci sono layout molto semplici da utilizzare, e usando in modo appropriato le distanze tra i componenti dei layout e i bordi puoi ottenere in modo semplice un'infinità di situazioni diverse.

    Per quanto riguarda il secondo metodo, se registri un listener sul pannello ottieni le coordinate relative al pannello.
    Il punto cliccato lo trovi con il metodo getPoint() applicato al MouseEvent del mousePressed (MouseEvent e).
    Il punto di partenza dell'immagine lo conosci già, perché la fai partire da quelli che hai chiamato xs e ys. A quel punto basta controllare che la x e la y del punto siano maggiori di xs e ys e minori di xs+miaImmagine.getWidth() e ys+miaImmagine.getHeight().

    Ovviamente senza vedere più codice non ci si può rendere conto della situazione, se hai modo/voglia posta più codice e provo a dirti come risolverei io la cosa.
    this.addMouseListener(new MouseAdapter(){
    public void MousePressed(MouseEvent e){
    e.getPoint();

    if(e.getX()>xs & e.getY()>ys & e.getX()<xs+miaImmagine.getWidth(circleElement) & e.getY()<ys+miaImmagine.getHeight(circleElement))
    {
    JFrame info=new JFrame();
    info.setTitle("Informazioni sosta");
    info.setBounds(600, 200, 250, 360);
    info.setVisible(true);
    }
    }
    });

    ma non funziona !
    mi dice che il metodo Mouse Pressed non è utilizzato
    Ultima modifica di spino8; 02-07-2016 a 17:30

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.