Interface Grafica

4 respostas
R

Estou tentando botar duas figuras no JOptionPane.showMessageDialog, alguem sabe como que eu faço isso ? E se não der conhece alguma outra API que o faça ?

4 Respostas

ciczan

Crie um JDialog modal e use o método setVisible(true) para mostra-lo.

Para as figuras vc pode usar JLabels uo JImageIcon mesmo.

R

em alguma dessas APIS eu consigo dizer exatamente a posição da figura ?

davidbuzatto

Bem, API é toda a uma coleção de classes que trabalham juntas para fazer algo ou uma classe sozinha que faz tudo (não recomendável). Os exemplos que o ciczan deu são classes, que pertencem a uma API.

No Java num tem um componente (como no delphi) de figuras, vc tem que sar outro componente que possa exibir uma figura (como o JLabel)

Outra coisa, se sua pergunta é sobre interface gráfica, poste no fórum de interface gráfica e não no java básico.

Tenta isso aqui para exibir uma imagem

JLabel l = new JLabel( new ImageIcon( getClass().getResource( caminhoDaSuaImagem ) ) ;

Os JOptionPanes são da forma q vc ta acostumado a usar, como vc quer algo muito diferente, vc vai ter q estender JOptionPane ou então JDialog.

Para opter o local (relativo ao container que contêm um componente) vc pode usar o método getLocation() q vai te retornar um Point

seuLabel.getLocation().x; // retorna a coordenada x seuLabel.getLocation().y; // retorna a coordenada y

Falow!

R

Pa cara to com um Jframe aqui mas ainda nao consegui bota duas figuras nele

AI vai o codigo:

import java.awt.*;
 import java.awt.event.*;
 import javax.swing.*;
 public class InfoFigura extends JFrame {
  private JLabel label;
  private Icon icone = new ImageIcon( "imagens/imagem0" );
  private Icon icone2 = new ImageIcon( "imagens/imagem1" );
  public InfoFigura() {
     super( "Testando JLabel" );
      
      Container container = super.getContentPane();
      container.setLayout( new FlowLayout() );
     
      label = new JLabel();
      label.setText("Texto Aqui");
      label.setIcon( icone );
      label.setHorizontalTextPosition( SwingConstants.CENTER );
      label.setVerticalTextPosition( SwingConstants.BOTTOM );
      label.setToolTipText("Esta é a Figura" );
      container.add( label );
      setSize( 360, 150 );
      setVisible( true );
   }

   public static void main( String args[] )  {
      InfoFigura application = new InfoFigura();
      application.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
   }
 }

Eu gostaria de botar duas figuras nele e conseguir especificar exatamente onde essas figuras vao ficar, é possivel ?

Criado 15 de agosto de 2006
Ultima resposta 15 de ago. de 2006
Respostas 4
Participantes 3