Visualizzazione dei risultati da 1 a 6 su 6

Discussione: JPanel getSize

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    10

    JPanel getSize

    salve,
    ho un forte dubbio che mi assilla..
    ho creato un JFrame nel quale ho posizionato un JPanel che deve contenere dell'animazione.
    L'oggetto in movimento è creato da una classe che, date le coordinate di partenza, ne calcola la traiettoria ed è quindi istanziato nel costruttore del JPanel. Ora, a me servirebbe l'altezza del JPanel per calcolare il range in qui scegliere la y di partenza.
    Ma facendo un this.getSize nel costruttore del JPanel ovviamente ottengo delle coordinate pari a 0,0.
    Come ca.. faccio a ottenere le misure del suddetto JPanel già all'interno del suo costruttore????
    grazie per la collaborazione

  2. #2
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    credo, ma non sono sicurissimo (ti conviene provare), che nn devi fare riferimento a getSize() ma al metodo getPreferredSize()
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    10
    ho provato con this.getPreferredSize(), ma mi restituisce delle misure che non rispecchiano il JPanel; del tipo java.awt.Dimension[width=10,height=10]...
    ma il JPanel è 690 per 500 circa!!!???

  4. #4
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790
    Originariamente inviato da S3CO
    ho provato con this.getPreferredSize(), ma mi restituisce delle misure che non rispecchiano il JPanel; del tipo java.awt.Dimension[width=10,height=10]...
    ma il JPanel è 690 per 500 circa!!!???
    ma nel cotruttore lo evochi alla fine...cioè quando lo hai riempito?
    conoscenze: C/C++, Java, PHP, Python
    [No PM tecnici o di qualsiasi genere]

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    10
    la chiamata è a metà costruttore perchè dopo dovrei ottenere la metà dell'altezza del JPanel come parametro da passare alla mia classe per l'animazione..
    ma ho provato a fare una System.out.print(this.getSize); alla fine del costruttore per controllare se ritornasse una dimensione valida, ma continua a darmi 0,0

    .. da qualche parte avevo letto una mezza frase sul metodo validate() che dovrebbe calcolare le dimensioni dei componenti.. ma non capisco come!

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    10
    risolto!! o meglio ho aggirato il problema creando prima il JPanel e facendo partire l'animazione da un JButton dopo aver acquisito tutte le informazioni

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.