Probleme JDialog

bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005 - 13 avril 2004 à 11:17
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006 - 24 avril 2004 à 15:45
hi,

J'essaye de creer une JDialog dans un applet qui affiche une JFileChoser.
J'utilise pour cela un JPanel et un ContenentPane.
Mais j'ai des grosse exception lors de l'execution.

Si qq un peut me donner un coup de main, ou possede un exemple...

Merci.

a+

13 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
13 avril 2004 à 11:58
Salut,

donnes nous le message de l'exception si tu veux qu'on t'aide
0
bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005
13 avril 2004 à 12:50
En fait j'ai trouve, j avais juste un petite probleme de merde avec le ContenentPane.

Mais j'ai un second probleme, je suis dans un applet et je veux rendre ma JDialog modal.

Mais il faut preciser la frame owner...

J'ai essaye this mais ca marche pas.Je sais pas comment faire.

Merci.

a+
0
bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005
13 avril 2004 à 12:53
J'ai aussi trouve, dans l'api il y a la methode setModal(boolean)

a++
0
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006
19 avril 2004 à 02:12
salut

je voulais savoir comment tu fais pour faire fonctionner ton JFileChooser dans ton applet.
c'est ce que j'essaie de faire mais j'y arrive pas.
pourtant j'ai réussi à le faire fonctionner dans une JFrame normale...

je comprends pas. si tu peux me filer un coup de main...

merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005
20 avril 2004 à 11:45
hi,

En fait je l'integre pas directement a mon applet.
Je cree dans un premier temps un bouton au quel j'associe une jdialog contenant mon jfilechoser.

voila le code associe au bouton, il te reste juste a creer un jbutton.

void jButton1_actionPerformed(ActionEvent e) {
JDialog JD = new JDialog();
JD.setModal(true);
JD.setSize(640,350);
JD.setTitle("Choose a file");

//recupere le choix de l'utilisateur et attribut une action appropiée
int returnVal = jFileChooser1.showOpenDialog(this);
if(returnVal == JFileChooser.CANCEL_OPTION) {
JD.setVisible(false);
}

if(returnVal == JFileChooser.APPROVE_OPTION) {
//recupere le fichier selectionné
String theFile = null;

while (theFile == null){
theFile = jFileChooser1.getSelectedFile().getName();
}

JD.setVisible(false);
}

}

a+
0
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006
21 avril 2004 à 01:02
salut

merci pour ta reponse

pour tester ton code, j'ai juste créer, dans un panel, un bouton auquel j'y ai associé ton code (comme tu me l'avais dit)

mais il me genere 1 erreur au niveau du jFileChooser1.showOpenDialog(this)...
je ne comprends pas

vois par toi meme:


class OpenFilePanel extends JPanel
{

.    JButton bouton;
.    JFileChooser jFileChooser1;

.    public OpenFilePanel()
.   {
.         jFileChooser1 =new JFileChooser();
.         bouton=new JButton("ouvrir");
.         bouton.addActionListener(new ActionListener()
.         {
.	public void actionPerformed(ActionEvent e) {
.                   JDialog JD = new JDialog();
.                   JD.setModal(true);
.                   JD.setSize(640,350);
.                   JD.setTitle("Choose a file");
.
.	//recupere le choix de l'utilisateur et attribut une action appropiée
.	int returnVal = jFileChooser1.showOpenDialog(this);
.	if(returnVal == JFileChooser.CANCEL_OPTION) {
.                     JD.setVisible(false);
.               }
.	if(returnVal == JFileChooser.APPROVE_OPTION) {

.	//recupere le fichier selectionné
String theFile = null;
while (theFile == null){
.                    theFile = jFileChooser1.getSelectedFile().getName();
.	}

.	JD.setVisible(false);
.	}
.           }
.       });

.       add(bouton, BorderLayout.CENTER);

.   }
}


merci qd meme
0
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006
21 avril 2004 à 01:17
desole pour les petits points
je te remets le code sans...

class OpenFilePanel extends JPanel
{

JButton bouton;
JFileChooser jFileChooser1;

public OpenFilePanel()
{
jFileChooser1 =new JFileChooser();
bouton=new JButton("ouvrir");

bouton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
JDialog JD = new JDialog();
JD.setModal(true);
JD.setSize(640,350);
JD.setTitle("Choose a file");

//recupere le choix de l'utilisateur et attribut une action appropiée
int returnVal = jFileChooser1.showOpenDialog(this);
if(returnVal == JFileChooser.CANCEL_OPTION) {
JD.setVisible(false);
}
if(returnVal == JFileChooser.APPROVE_OPTION) {
//recupere le fichier selectionné
String theFile = null;
while (theFile == null){
theFile = jFileChooser1.getSelectedFile().getName();
}
JD.setVisible(false);
}
}
});

add(bouton, BorderLayout.CENTER);
}
0
bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005
21 avril 2004 à 11:44
hi,

le code est a inserer directement dans ton applet.

Il faut pas faire de extend jPanel.
Tu inseres le code dans ta fenetre donc ton extend JApllet.

Apres tu crees ton panel...

a+
0
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006
21 avril 2004 à 13:41
salut

j'ai inséré le code directement dans mon applet cette fois ci...
mais toujours le meme message d'erreur, en l'occurence
jFileChooser1.showOpenDialog(this)

voila ce que j'ai:

import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import java.beans.*;
import java.util.*;
import java.io.*;
import javax.swing.*;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileView;
import java.applet.*;
import javax.swing.border.*;

public class OpenButton extends Applet {

JButton bouton=new JButton("ouvrir");;
JFileChooser jFileChooser1;

public void init() {

bouton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
JDialog JD = new JDialog();
JD.setModal(true);
JD.setSize(640,350);
JD.setTitle("Choose a file");

//recupere le choix de l'utilisateur et attribut une action appropiée
int returnVal = jFileChooser1.showOpenDialog(this);
if(returnVal == JFileChooser.CANCEL_OPTION) {
JD.setVisible(false);
}
if(returnVal == JFileChooser.APPROVE_OPTION) {
//recupere le fichier selectionné
String theFile = null;
while (theFile == null){
theFile = jFileChooser1.getSelectedFile().getName();
}
JD.setVisible(false);
}
}
});
}

}


en esperant que je t'embete pas trop...merci
0
bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005
21 avril 2004 à 14:10
hi

Copy ce code, et met ce que je t'ai donne pour l'association du bouton.
Ca devait fonctionner...
a+

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

/**
* Titre :

* Description :

* Copyright : Copyright (c) 2004

* Société :

* @author non attribuable
* @version 1.0
*/

public class OpenFile extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
JButton jButton1 = new JButton();

//Construire le cadre
public OpenFile() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Initialiser le composant
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
jButton1.setText("jButton1");
jButton1.addActionListener(new OpenFile_jButton1_actionAdapter(this));
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(400, 300));
this.setTitle("ouvrir un fichier");
contentPane.add(jButton1, BorderLayout.CENTER);
}
//Redéfini, ainsi nous pouvons sortir quand la fenêtre est fermée
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}

void jButton1_actionPerformed(ActionEvent e) {
//met mon code de depart ici
}
}

class OpenFile_jButton1_actionAdapter implements java.awt.event.ActionListener {
OpenFile adaptee;

OpenFile_jButton1_actionAdapter(OpenFile adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
0
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006
21 avril 2004 à 15:17
merci de m'avoir fourni ton code

ce code affiche un bouton qui m'ouvre un JFilechooser dans une JFrame.

or je possède deja ce code...
mon probleme est juste de l'adapter dans une applet.

voici mon code:

public class FileChooserTest
{
public static void main(String[] args)
{
ImageViewerFrame frame = new ImageViewerFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}

class ImageFrame extends JFrame
{
public ImageFrame()
{
setTitle("FileChooserTest");
setSize(300,400);
  	 
JButton open=new JButton("ouvrir");
open.addActionListener(new FileOpenListener());
label = new JLabel();
Container contentPane = getContentPane();
contentPane.add(open);
chooser = new JFileChooser();
}
   

private class FileOpenListener implements ActionListener
{
public void actionPerformed(ActionEvent evt)
{
// configure le selecteur de fichier
chooser.setCurrentDirectory(new File("."));

// accepte les fichiers .jpg, .jpeg, .gif  
// ExtensionFileFilter n'est pas defini dans ce code
final ExtensionFileFilter filter = new ExtensionFileFilter();
filter.addExtension("jpg");
filter.addExtension("jpeg");
filter.addExtension("gif");
filter.setDescription("Image files");
chooser.setFileFilter(filter);

// affiche ma boite de dialog
int result =chooser.showOpenDialog(ImageFrame.this);

// recupere l'adresse du fichier selectionné
if(result == JFileChooser.APPROVE_OPTION)
{
String name = chooser.getSelectedFile().getPath();
label.setIcon(new ImageIcon(name));
}
}
}
private JLabel label;
private JFileChooser chooser;
}


-> affiche un bouton (dans une JFrame) qui ouvre un ma boite de dialog

ca ne doit pas etre si compliqué d'integrer ca dans une applet mais j'arrive pas... si tu as une idee.

merci d'avance
a+
0
bob82fr Messages postés 38 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 13 janvier 2005
22 avril 2004 à 09:20
hi,

Le code que je t'ai fais, c une applet????
Et t'as pas de main dans une applet..
Je comprend pas, tu prends tout le code que je t'ai fais, tu as une jfilechooser, dans une jdialog, dans un bouton, dans un applet...Qu'est tu veux de plus??
C plus tres dure apres de rajouter du code autour de ca...

explique toi mieux, ou essaye de te debrouiller avec ce que je t'ai donné...

a++
0
remy1066 Messages postés 51 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 31 octobre 2006
24 avril 2004 à 15:45
salut

c'est bon j'ai finalement réussi a la faire fonctionner...
ouf

encore merci pour tout

a+
0
Rejoignez-nous