Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107

    [ JAVA ] Cambiare aspetto ad un frame

    Salve a tutti.... volevo sapere se c'è la possibilità di cambiare aspetto ad un frame in Java, mi spiego meglio: vorrei che nel frame della mia applicazione non apparisse la barra superiore di "default" del Java ( vedi Barra Default.jpg ) e cioè quella con la classica tazzina di caffè del Java , ma una differente che mi piace di più ( vedi Barra Voluta.jpg ) che ho visto nell'applicazione ProgressBarDemo lanciata utilizzando Java Web Start ( spero non sia una caratteristica esclusiva della tecnologia Java Web Start ); allego le due immagini........... grazie a tutti e ciaooooo
    Immagini allegate Immagini allegate
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  2. #2
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Questa è la barra di default.....grazie di nuovo e ciaoooooo
    Immagini allegate Immagini allegate
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  3. #3
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    //Setto l'ambientazione
    String plaf = "com.sun.java.swing.plaf.windows.WindowsLookAndFee l";
    //String plaf = "com.sun.java.swing.plaf.motif.MotifLookAndFee l";
    //String plaf = "javax.swing.plaf.metal.MetalLookAndFeel";
    try
    {
    UIManager.setLookAndFeel(plaf);
    SwingUtilities.updateComponentTreeUI(DirectLabPane l.this);
    }
    catch(Exception e)
    {
    //non voglio messaggi d'eccezione
    }

    Decommentati quella che ti piace di più! :adhone:
    Maddalena... Perché proprio Iacchetti!...

  4. #4
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Grazie Pireda a buon rendere....
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  5. #5
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Scusami ancora per il disturbo pireda, ma l'unica cosa che non mi è chiara nel tuo pezzo di codice è
    SwingUtilities.updateComponentTreeUI( DirectLabPanel.this );
    che cosa è DirectLabPanel?
    Perchè se passo solo this mi cambia ( ovviamente ) tutto l'aspetto del frame ma non la barra superiore.... grazie e scusa del disturbo
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  6. #6
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Ops... E' una mia classe... La devi sostituire con il nome della tua classe estendente JPanel!
    Maddalena... Perché proprio Iacchetti!...

  7. #7
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao pireda.
    Innanzitutto grazie per il file ftp.zip, gentilissimo; ti volevo chiedere, poi, una ultima cosa.... come dovrei modificare JPanel per poterlo adattare al tuo pezzo di codice? Non potresti farmi vedere un esempio ( sempre se possibile )?
    Grazie ancora
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  8. #8
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Non devi fare nessuna modifica alla classe!

    class NomeClasse extends JPanel
    {
    public NomeClasse()
    {

    //Setto l'ambientazione
    String plaf = "com.sun.java.swing.plaf.windows.WindowsLookAndFee l";
    //String plaf = "com.sun.java.swing.plaf.motif.MotifLookAndFee l";
    //String plaf = "javax.swing.plaf.metal.MetalLookAndFeel";
    try
    {
    UIManager.setLookAndFeel(plaf);
    SwingUtilities.updateComponentTreeUI(NomeClasse.th is);
    }
    catch(Exception e)
    {
    //non voglio messaggi d'eccezione
    }

    }
    }

    Non funziona???
    Maddalena... Perché proprio Iacchetti!...

  9. #9
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao pireda, ti sto dando molto fastidio....scusami .
    Ti posto il codice che ho scritto:

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;

    public class ProgressBarDemo extends JFrame {
    public final static int ONE_SECOND = 1000;

    private JProgressBar progressBar;
    private Timer timer;
    private JButton startButton;
    private LongTask task;
    private JTextArea taskOutput;
    private String newline = "\n";
    NomeClasse contentPane = new NomeClasse();

    public ProgressBarDemo() {
    super("ProgressBarDemo");
    task = new LongTask();

    //Create the demo's UI.
    startButton = new JButton("Start");
    startButton.setActionCommand("start");
    startButton.addActionListener(new ButtonListener());

    progressBar = new JProgressBar(0, task.getLengthOfTask());
    progressBar.setValue(0);
    progressBar.setStringPainted(true);

    taskOutput = new JTextArea(5, 20);
    taskOutput.setMargin(new Insets(5,5,5,5));
    taskOutput.setEditable(false);

    JPanel panel = new JPanel();
    panel.add(startButton);
    panel.add(progressBar);


    contentPane.setLayout(new BorderLayout());
    contentPane.add(panel, BorderLayout.NORTH);
    contentPane.add(new JScrollPane(taskOutput), BorderLayout.CENTER);
    contentPane.setBorder(BorderFactory.createEmptyBor der(20, 20, 20, 20));
    setContentPane(contentPane);

    //Create a timer.
    timer = new Timer(ONE_SECOND, new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    progressBar.setValue(task.getCurrent());
    taskOutput.append(task.getMessage() + newline);
    taskOutput.setCaretPosition(
    taskOutput.getDocument().getLength());
    if (task.done()) {
    Toolkit.getDefaultToolkit().beep();
    timer.stop();
    startButton.setEnabled(true);
    progressBar.setValue(progressBar.getMinimum());
    }
    }
    });
    }

    /**
    * The actionPerformed method in this class
    * is called when the user presses the start button.
    */
    class ButtonListener implements ActionListener {
    public void actionPerformed(ActionEvent evt) {
    startButton.setEnabled(false);
    task.go();
    timer.start();
    }
    }

    public static void main(String[] args) {
    JFrame frame = new ProgressBarDemo();
    frame.addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
    System.exit(0);
    }
    });

    frame.pack();
    frame.setVisible(true);
    }
    }
    class NomeClasse extends JPanel
    {
    public NomeClasse()
    {

    //Setto l'ambientazione
    //String plaf = "com.sun.java.swing.plaf.windows.WindowsLookAndFee l";
    String plaf = "com.sun.java.swing.plaf.motif.MotifLookAndFee l";
    //String plaf = "javax.swing.plaf.metal.MetalLookAndFeel";
    try
    {
    UIManager.setLookAndFeel(plaf);
    SwingUtilities.updateComponentTreeUI(NomeClasse.th is);
    }
    catch(Exception e)
    {
    //non voglio messaggi d'eccezione
    }

    }
    }
    ti allego il frame che mi esce, come noti cambia il colore del pannello ma la barra dove si trova la tazzina di caffe non è cambiata; è probabile, anzi quasi sicuro, che io non abbia capito bene il lookandfeel e stia sbagliando ad usare la tua classe... perdonami del disturbo e ciao
    Immagini allegate Immagini allegate
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  10. #10
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    E con il metal come viene?
    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.