Janela do JOptionPane

fala galera,
alguém sabe se tem como eu definir o tamnho da janela do JOptionPane?

vlw

O JoptionPane não deixa vc modificar seu tamanho…

crie um frame que faça o que o JoptionPane faz…

Você pode utilizar o JDialog

Ou o JDialog assim como o amigo disse.

JFrame e JDialog seja ela qual for seguem o mesmo contexto pois são netas de Window…

se vc quizer ainda pode inserir um JPanel dentro JOptionPane e ai sim redimensiona-lo

vlw :wink:

Como não? É esquisito, mas dá para fazer sim.

[code]
public class Teste {
public static void main(String[] args) {
//Primeiro você cria um pane
JOptionPane pane = new JOptionPane(“Por favor, escolha sim ou não”, JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_OPTION);

    //Depois vc cria a dialog do pane e ajusta seu tamanho
    JDialog dialog = pane.createDialog(null, "Escolha sim ou não");
    dialog.setSize(500,500);
    dialog.setVisible(true);

    //Teste a resposta definida no pane, não na dialog do pane.
    if ((Integer)pane.getValue() == JOptionPane.YES_OPTION)
        System.out.println("Escolhido sim");
    else
        System.out.println("O sim não foi escolhido");
    
    System.exit(0);
}

}[/code]

Estou pesquisando aki como se utiliza o JFrame ou JDialog, não tenho muita experiência,

vou dar mais uma olhada aki e posto alguma dúvida que vier,
obrigado a todos ae

Esse viniGodoy e foda…kkkkkkkkkkkkkkkkkk

PS: Isso está descrito no próprio Javadoc do JOptionPane (vejam mais para o final).
http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JOptionPane.html

Como não? É esquisito, mas dá para fazer sim.

[code]
public class Teste {
public static void main(String[] args) {
//Primeiro você cria um pane
JOptionPane pane = new JOptionPane(“Por favor, escolha sim ou não”, JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_OPTION);

    //Depois vc cria a dialog do pane e ajusta seu tamanho
    JDialog dialog = pane.createDialog(null, "Escolha sim ou não");
    dialog.setSize(500,500);
    dialog.setVisible(true);

    //Teste a resposta definida no pane, não na dialog do pane.
    if ((Integer)pane.getValue() == JOptionPane.YES_OPTION)
        System.out.println("Escolhido sim");
    else
        System.out.println("O sim não foi escolhido");
    
    System.exit(0);
}

}[/code]
[/quote]

Vlw ViniGodoy, esse pequenp código me ajudou bastante, agora já dá pra eu quebrar a cabeça aki com um código maior,

vlw
Abração

Ah, se alguém puder me ajudar me passando um link de uma apostila ou um tutorial pra eu aprender a usar o JFrame e o JDialog, agradeço desde já.

Isso vale para quase todos os componentes do Swing.

Vá no google e digite:
“how to use” e o nome do componente.

Por exemplo, para a busca:
How to use JFrame

Você acha a página:
http://java.sun.com/docs/books/tutorial/uiswing/components/frame.html

Logo no primeiro link. E a página:
http://java.sun.com/docs/books/tutorial/uiswing/components/internalframe.html

No segundo.

O problema agora é perfumaria,
como faço para colocar a mensagem no meio da tela?

tentei colocar a posição no final da mensagem, mas não funcionou, acho q só funciopna com applet

vlw

Você realmente precisa mudar tanto assim um JOptionPane? Vai ficar muito diferente dos encontrados normalmente no Windows, Linux, etc…

Se você precisa de tanto perfume assim, fica mais fácil e mais claro criar seu próprio JDialog, como o Teitei falou desde o início…

concordo, mas é que não tenho experiência com JDialog nem JFrame e tenho muitos JOptionPane

Então não perca tempo com frescuras. :slight_smile:

A janela padrão já é… bem padrão.

[quote=ViniGodoy]Então não perca tempo com frescuras. :slight_smile:

A janela padrão já é… bem padrão.[/quote]

concordo, acho q preciso estudar mais JFrame, pelo q li até agora, e o que já sabia sobre JFrame, vejo q resolveria meu problema.

Obrigado ae ViniGodoy,

JFrame não resolve. Você sempre pode clicar no frame que está atrás dele.
No caso de simular um JOptionPane, você vai precisar de um JDialog e com a opção setModal definida para true.