Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654

    [JAVA] Come creare un JTextField ed un JPasswordField della stessa lunghezza

    Allego una foto del problema.
    Ho creato una mascherina di login con un campo username (JTextField) ed un campo password (JPasswordField). Ho notato però che settando manualmente le lunghezze dei campi, queste non sono mai fisse e variano da computer a computer in base alle impostazioni di sistema.

    Io ho settato la lunghezza in questo modo:

    JTextField username = new JTextField("", 25);
    JPasswordField password = new JPasswordField ("", 25);

    Riesco a risolvere il problema usando un pannello con layout a griglia e non dichiarando le dimensioni dei campi, ma in quel caso i campi di immissione testo si adattano alla lunghezza della JLabel "Nome utente" (visto che le celle del layout a griglia devono essere tutte della stessa grandezza) e risultano essere troppo corti.

    Come posso fare?
    Immagini allegate Immagini allegate
    Maddalena... Perché proprio Iacchetti!...

  2. #2
    Utente di HTML.it L'avatar di zaion
    Registrato dal
    Mar 2002
    Messaggi
    258
    prova ad usare un gridLayout(null) e a posizionare i componenti
    a mano con rescape() oppure con setBounds()

    codice:
    JPanel.add(jtextfield);
    jtextfield.setBounds(100,50,200,20);
    setBounds(int x, int y, int larghezza, int altezza)
    bye bye

  3. #3
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Il metodo rescape non lo trovo nelle API online, mentre utilizzando setBounds in questo modo:

    setLayout(new GridLayout());

    username = new JTextField();
    password = new JPasswordField();

    JLabel lblUser = new JLabel("Nome utente: ", SwingConstants.RIGHT);
    JLabel lblPassword = new JLabel("Password: ", SwingConstants.RIGHT);

    add(username);
    username.setBounds(100,50,200,20);
    add(password);
    password.setBounds(100,100,200,70);
    Mi mette i due campi uno di fianco all'altro e tra l'altro sono piccolissimi...

    Vi prego aiutatemi!!!
    Maddalena... Perché proprio Iacchetti!...

  4. #4
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    ho risolto utilizzando il metodo setPreferredSize su entrembi i componenti! :adhone:
    Maddalena... Perché proprio Iacchetti!...

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