Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56

    Posizione JLabel con coordinate double

    Ciao a tutti ho un piccolo problema in una applicazione in java.
    Sto facendo un simulatore di fisica che è composto anche di una interfaccia grafica che visualizza il moto vero e proprio grazie a una JLabel con una icona che si muove lungo una retta di un'altra JLabel; qui però sorge il problema, infatti se io utilizzo per lo spazio percorso la formula s=v*t con t che cambia ogni millisecondo i valori verranno per forza decimali ma se metto:
    JLabel1.setLocation(X+s, Y); dove X e Y sono due variabili già dichiarate da ovviamente errore in quanto s è double.. se io provo a metterlo integer funziona ma si sposta di metro in metro, un esempio:

    Se ho v = 3 e t da 0.000 il primo spazio utile sarà 3*0.001 un numero decimale e io vorrei far muovere il Label con l'icona in maniera uniforme millisecondo per millisecondo non ogni volta che arriva ad un intero 3*1, 3*2 ecc...

    Spero di essere stato chiaro, qualcuno sa come posso dare delle coordinate double ad un JLabel, oppure cosa potrei usare al posto del JLabel?

  2. #2
    Perchè utilizzare dei componenti complessi come le JLabel? Crea un Canvas e disegnaci sopra, mi sembra la cosa più semplice e logica.

    Prova a dare un'occhiata QUI
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56
    Ok ora do una occhiata al link e faccio sapere se riesco a risolvere! Grazie.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56
    Sperando di non dire una sciocchezza, a quanto ho visto Graphics2D è utile se si utilizzano linee, punti, rettangoli, ecc... ma non ho visto opzioni come drawImage e il problema rimane.
    Nel programma ho una label con l'asse X che anche se non in 2D funziona perfettamente (d'altronde è solo una linea), al contrario l'altra label che è una semplice icona di una macchina che deve correre sul suddetto asse con la formula s = v*t con t = 0.001 in poi.. si sposta ogni volta che t = intero... neanche con una canvas perchè nel suo metodo drawImage accetta parametri int... riesco a risolvere tale problema cosa posso fare?

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 © 2025 vBulletin Solutions, Inc. All rights reserved.