Interface graphique java swing

Bonjour,

je suis debutante en java et j ai une question c est la suivante en faite je dois faire une interface graphique dont la premiere fenetre contient des boutons et chaque bouton doit donne accee a une autre fenetre c est une pqge web qui contient des graphes aider moi svp a faire cette etape basic

merci d avance
Configuration: Linux
Firefox 1.5.0.12

43 réponses

Résumé de la discussion

La problématique porte sur la création d'une interface graphique Java où la première fenêtre contient des boutons et où chacun ouvre une autre fenêtre affichant une page HTML contenant des graphes. Des solutions courantes recommandent d'ouvrir la page dans le navigateur par défaut via un bouton Swing et un ActionListener, ou d'utiliser un composant JEditorPane lorsque le rendu le permet. Des conseils évoquent aussi l'aide d'IDE comme NetBeans ou Eclipse pour faciliter le développement, et avertissent que certains graphes ou scripts embarqués peuvent dépasser les capacités de JEditorPane. En cas de besoin, l'ouverture externe dans le navigateur par défaut reste la solution la plus fiable pour afficher des graphes complexes lorsque le rendu nécessite des scripts ou des ressources dynamiques.

Bobot (l’IA à votre service)
  1. Salut,

    Rajoute cette classe à tes sources: http://www.koders.com/java/fid15B9055DAB0D5DCBFA69126199884C931E645551.aspx?s=mdef%3Acompute

    Par la suite, lorsque tu veux ouvrir une page Web à partir d'un bouton en Swing, tu rajoutes un ActionListener et dans l'actionPerformed tu écris qqch du genre

    BrowserControl.displayURL("http://ta_page_web_correspondant_au_bouton_en_cause");

    Ceci ouvrira la page dans le navigateur par défaut sur la machine.
    ++
    1. Faire un serveur Multi Clients : Une classe « ServeurChat » qui contient le main et gère les appel des clients avec un ServerSocket et un accept().Une classe « connexion » qui hérite de thread et gères les connexions avec chaque client (socket) et une classe « salon » qui gére la liste de tous les connectés avec un « vector ».la classe salon contient une méthode « ajouter() » qui prend en argument une connexion pour ajouter une nouvelle connexion au vector et une méthode « ecrireTous ( ) » qui prend en argument le message pour écrire à tous.
      1. Salut ! J'ai dû réaliser tout en Java un jeu de dames dans le cadre d'un projet. Tout l'interface graphique a été réalisé avec les bibliothèques SWING et AWT. Je te file le lien au cas où que tu veuilles t'en inspirer ! http://jb-toutsavoir.blogspot.com/
        Bonne chance =)
        1. bonjour sandul

          j'ai une bonne nouvelle çaaaaaaaaa marche merci beaucoup

          voila je te explique comment j'ai resolu le probleme, le probleme vient de droit d'acce au zabbix :
          donc il faut donner le droit d'acce a tous les visiteurs du zabbix voila est apres ça marche !!

          cordialement
          1. Félicitations, lououle... =)
            Bien content pour toi.
          2. vraiment vous méritez une grande félicitation pour ce grand pas ,vue que 1,2... jusqu'à 80 messages a fin que le problème est résolu .

            une vif merci a sandul ( ces gens on les trouve rare ) pour ce patience et aide précieux ,

            dommage s'il y a une compétition ici, sans aucune doute et aucun concurrent sandul a la première place avec un record de plus de 35 messages dans un seul topic ;)
          3. @hamza_bbaMdrrr, hamza... Meurchi beaucoup pour tes appréciations ! ;-)
        2. pour moi je suis en stage dans une entrprise mais mon chef de projet est en deplacement c'est pour ca et je suis vraiment en retard c'est pour ça je suis paniquée mon stage a deux partie la premier est fini mais la deuxieume depand de la programation et je suis debutante donc c'est pour ça, mais merci pour toi a toustes les aides que tu m'a porter

          pour le probleme on peux pas le resodre a partir du programme cas si je change les parametre de ferfox peut etrs le responssable l'aime pas !!!
          1. ce que je veux est d'afficher le URL (ou il ya l'image du graphe) en utilisant la classe BrowserControl voila le code de mon bouton

            private JButton getJButton() {
            if (jButton == null) {
            jButton = new JButton();
            jButton.setBounds(new java.awt.Rectangle(44,75,32,33));
            jButton.setEnabled(true);
            jButton.setPreferredSize(new java.awt.Dimension(50,26));
            jButton.setIcon(new ImageIcon("/home/aviasys/Desktop/icon_circle/16-circle-red_16x16.png"));
            jButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent e) {
            BrowserControl.displayURL("http://localhost/zabbix/");
            }
            });

            ActionListener listener = new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            //try {
            BrowserControl.displayURL("https://www.google.fr/?gws_rd=ssl");
            //break;
            //}
            //catch
            //(IOException e1) {
            //e1.printStackTrace();
            }
            //}
            };
            // Will refresh this page every 30 seconds
            Timer timer = new Timer(30000, listener);
            timer.start();
            }
            return jButton;
            }

            ce code il m' affiche chaque 30 sec une nouvelle URL, donc je metrouve avec bp de URL dans quelque minute donc je ne peux pas laisser l'application longtemps!!!

            la question est la suivante : est ce que je peux suprimmer la URL precedante a chaque fois comme ça j'aurais que une URL a la fois, ou je peux je peux lui preciser qu'il m'affiche la nouvelle URL sur la precedante !!??? je ne sais pas si c'est possible ou pas ??

            j'ai decommanter ce code car il me donne des erreurs
            //try {
            BrowserControl.displayURL("https://www.google.fr/?gws_rd=ssl");
            //break;
            //}
            //catch
            //(IOException e1) {
            //e1.printStackTrace();
            }
            //}
            1. ce code il m' affiche chaque 30 sec une nouvelle URL, donc je metrouve avec bp de URL dans quelque minute donc je ne peux pas laisser l'application longtemps!!!

              la question est la suivante : est ce que je peux suprimmer la URL precedante a chaque fois comme ça j'aurais que une URL a la fois, ou je peux je peux lui preciser qu'il m'affiche la nouvelle URL sur la precedante !!??? je ne sais pas si c'est possible ou pas ??

              ==> ce que tu veux est réustiliser le navigateur pour l'affichage de l'URL

              Il y a deux possibilités:
              1. Paramétrer le navigateur; pour firefox, il suffit de lui dire d'ouvrir les nouvelle pages dans l'onglet courant: Faire, donc sous firefox: Tools/Options, aller sur l'onglet Tabs et cocher New pages should be opened in current tab

              L'option 1. affecte la navigation pour tous les programmes, donc elle pourrait s'avérer inadéquate. Voici l'option 2:
              2. Créer en local (sur le disque) un fichier html incluant ton URL zabbix et les paramètres (si ces paramètres changent, tu peux très bien recréer le fichier html à la volée) et donner à BrowserControl l'URL de ce fichier. Dans ce fichier, tu t'arranges pour mettre un temps de rafraîchissement de 30 secondes. Si tu utilises cette 2ème méthode, le Timer devient inutile (firefox fera le rafraîchissement tout seul)

              J'ai une question qui m'intrigue: tu fais ceci pour apprendre? Dans une entreprise? En tant que stagiaire? Dans ce cas, pourquoi ne pas demander de l'aide à ton chef de projet?
          2. bonjour

            en faite il ya pas de probleme pour le jEditorPane c'est bien mais moi je veux afficher une URL (la URL ou il a que l'image du graphe ) chaque 30 sec, le temre marche tres bien mais le probleme ce que il affiche chaque 30 sec un nouveau URL donc je me trouve avec bp de URL pour queques seconde !!! est ce que je peux lui demander de me afficher la URL sur la precedante ou je lui demande de suprimer la precedante
            1. Arf, tu as oublié les consignes: ponctuation, clarité... Relis-toi: si tu comprends ce que tu as écrit ci-dessus tu es formidable :-p

              Tu sais, il y a plus de 70 messages échangés sur ce topic, et je suis perduadé que si tu faisais un effort pour gagner en clarité je pourrais t'aider plus efficacement.

              1. Reformule ce que tu veux pour que je pige.
              2. Poste ton code pour voir ce qui ne va pas avec ton approche

              ++
          3. ma question est comment je peux lui demander qu'il m'affiche chaque 30 sec le URL mais sur le meme pas un nouveau URL stp? ==> Hummm.... Lououle, il faut que tu essaies de comprende le code un peu. Avec le copier-coller tu ne feras pas longue route.

            Le code du Timer est tout simple:
            // Will refresh this page every 30 seconds
            Timer timer = new Timer(30000, listener);
            timer.start();

            Ceci instancie le Timer et l'associe au listener; concretement, toutes les 30 secondes le timer va appeler la méthode actionPerformed() du listener. Regardons le listener maintenant:
            		ActionListener listener = new ActionListener() {
            			private int i = 0;
            			public void actionPerformed(ActionEvent e) {
            				try {
            					switch (i++ % 4) {
            						case 0:
            							getEditorPane().setPage("https://www.google.fr/?gws_rd=ssl");
            							break;
            						case 1:
            							getEditorPane().setPage("https://www.ibm.com/fr-fr");
            							break;
            						case 2:
            							getEditorPane().setPage("https://www.oracle.com/index.html");
            							break;
            						case 3:
            							getEditorPane().setPage("https://www.microsoft.com/fr-fr/");
            							break;
            					}
            				} catch (IOException e1) {
            					e1.printStackTrace();
            				}
            			}
            		};

            On remarque que la méthode actionPerformed() se contente de tester le reste de la division i/4 dans une boucle: si le reste == 0, alors afficher telle URL, si le reste ==1 alors afficher une autre URL etc. Maintenant, si tu veux te débarrasser des 4 URL et en garder une seule: rien de plus simple: supprime le field i du listener et ne fais plus le switch. Exemple:
            		ActionListener listener = new ActionListener() {
            			public void actionPerformed(ActionEvent e) {
            				try {
            					getEditorPane().setPage("https://www.google.fr/?gws_rd=ssl");
            					break;
            				} catch (IOException e1) {
            					e1.printStackTrace();
            				}
            			}
            		};

            Aussi simple que cela.
            1. en faite je vais essai de changer le droit pour la BDD, cepandant pour le temer qui affiche le URL chaque 30 sec, je le ajouter dans mon programme pour qui il affiche le URL ou il ya le graphe, mais le probleme il affiche un nouveau URL chaque 30 sec donc je me trouve avec chaque 30 sec un URL ....

              ma question est comment je peux lui demander qu'il m'affiche chaque 30 sec le URL mais sur le meme pas un nouveau URL stp?
              1. tu connais pas comment changer le droit pour une basse de donee mysql???
                1. j'ai cherche dans la base de donnee de zabbix qui se trouve dans mon localhost els images des graphes et je trouve que les se trouve la table images, donc est ce que ou lieu de donner un URL je peux donner le chemain de l'image ??

                  ou bien je essai de changer le droit, je le rend public ???
                  1. j'ai cherche dans la base de donnee de zabbix qui se trouve dans mon localhost els images des graphes et je trouve que les se trouve la table images, donc est ce que ou lieu de donner un URL je peux donner le chemain de l'image ?? <== je ne pense pas que ça pourrait marcher (une image devrait être qqch générée dynamiquement, non? Sauf si zabbix génère de son propre chef les images et les stocke quelque part... dans ce cas ça pourrit marcher...

                    ou bien je essai de changer le droit, je le rend public ??? <== essaie d'abord comme ça, pour voir si le graphe est affiché correctement. Si oui, dans un deuxième temps, il y aura le rajout des authorisations dans l'URL (via éventuellement le HttpComponents de chez Apache)
                2. en faite au lieu de mettre tout le URL je mis que
                  http://localhost/zabbix/chart3.php?period=3600&from=0&items

                  et il m'a bien affiche lea zone du graphe mais sans le graphe, comme si je le mettre directement dans Firefox

                  tu pance que c'est apache qui fais le probleme ???
                  1. en faite il n ya pas de mot de passe il ya que le nom d' utilisateur "admin" donc je ajouter les choses suivantes

                    http://admin:localhost....
                    il me donne rien je clic sur le bouton mais il donne rien

                    puis

                    http://admin@localhost....

                    là il m a donner le meme erreur que avant NO permissions

                    http://admin:@localhost....
                    là il m a donner le meme erreur que avant NO permissions
                    1. Hum, je ne sais pas... ^^ Il faudra éventuellement essayer la librairie HttpComponents de chez Apache: http://hc.apache.org/ (et chercher un tuto)
                  2. salut

                    oui pour acceder a zabbix il me demande un mot de passe "admin" que je ajouter lors de l'instellation de zabbix !!!

                    je suis en train de charger ou sont les images de zabbix dans mon localhost, car le URL du graphe commence par localhost

                    http://localhost/zabbix/chart3.php?period=3600&from=0&items[0][itemid]=18472&items[0][drawtype]=1&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18470&items[1][drawtype]=1&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18473&items[2][drawtype]=1&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Utilization&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=1
                    1. Essaie de rajouter le user/password entre la partie http:// et la partie localhost/zabbix... de cette manière:
                      http://lououle:pass@localhost....
                      où lououle est l'utilisateur
                      et pass est son mot de passe
                  3. Voici un bout de code pour afficher une image (sans passer par un JEditorPane); si ça marche chez toi (après avoir remplacé mon image avec ton graphe) et si la signification des paramètres du graphe ne te gêne pas, il te reste à mettre en place le Timer avec les indications d'un post précédent (i.e. avec des JRadioButton ou un JCheckBox).

                    import java.awt.BorderLayout;
                    import java.awt.FlowLayout;
                    import java.awt.event.ActionEvent;
                    import java.awt.event.ActionListener;
                    import java.io.IOException;
                    import java.net.MalformedURLException;
                    import java.net.URL;
                    
                    import javax.imageio.ImageIO;
                    import javax.swing.ImageIcon;
                    import javax.swing.JButton;
                    import javax.swing.JFrame;
                    import javax.swing.JLabel;
                    import javax.swing.JPanel;
                    
                    public class LououleSample2 extends JFrame {
                    	private static final long serialVersionUID = 1L;
                    	private JLabel label;
                    
                    	/**
                    	 * Launch the application
                    	 * 
                    	 * @param args
                    	 */
                    	public static void main(String args[]) {
                    		try {
                    			LououleSample2 frame = new LououleSample2();
                    			frame.setVisible(true);
                    		} catch (Exception e) {
                    			e.printStackTrace();
                    		}
                    	}
                    
                    	/**
                    	 * Create the frame
                    	 */
                    	public LououleSample2() {
                    		super();
                    		setBounds(100, 100, 500, 375);
                    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    
                    		final JPanel panel = new JPanel();
                    		final FlowLayout flowLayout = new FlowLayout();
                    		flowLayout.setAlignment(FlowLayout.RIGHT);
                    		panel.setLayout(flowLayout);
                    		getContentPane().add(panel, BorderLayout.SOUTH);
                    
                    		final JButton showImageButton = new JButton();
                    		showImageButton.addActionListener(new ActionListener() {
                    			public void actionPerformed(ActionEvent e) {
                    				ImageIcon i = null;
                    				try {
                    					i = new ImageIcon(
                    							ImageIO
                    									.read(new URL(
                    											"http://japan.indymedia.org/usermedia/image/11/large/CHUCKMAN%20-%20BUSH%20-%20MAD%20COW%20-%20THE%20SOURCE%20DISCOVERED.jpg")));
                    				} catch (MalformedURLException e1) {
                    					e1.printStackTrace();
                    				} catch (IOException e1) {
                    					e1.printStackTrace();
                    				}
                    				getLabel().setIcon(i);
                    			}
                    		});
                    		showImageButton.setText("Show Image");
                    		panel.add(showImageButton);
                    
                    		label = new JLabel();
                    		getContentPane().add(label, BorderLayout.CENTER);
                    		//
                    	}
                    
                    	protected JLabel getLabel() {
                    		return label;
                    	}
                    }
                    
                    1. Et fais attention lorsque tu copies le code ci-dessus, l'URL dans le code ne passera pas, car trop longue au gôut de CCM; il s'agit de http://japan.indymedia.org/usermedia/image/11/large/CHUCKMAN%20-%20BUSH%20-%20MAD%20COW%20-%20THE%20SOURCE%20DISCOVERED.jpg
                      Du coup, clic sur le lien, l'image va s'afficher dans ton firefox et depuis l'URL de firefox recopie l'URL dans Eclipse.
                      Ciao.
                    2. @sandulbounjour

                      vendredi j'avais en probleme avec le reseau c'est pour ça que je suis deconnecter sans de te dire bon wkd en tout le cas je te dis bonne semaine,,,

                      en faite la classe elle fonctionne tres bien elle m'a affiche bien limage puis je changer le URL de l'image par le URL de mon graphe et la il m'affiche erreur: NO Permissions ! !!!

                      donc je ne sais pas si se a couse de zabbix ou autre chose?????
                    3. @lououleSalut,

                      puis je changer le URL de l'image par le URL de mon graphe et la il m'affiche erreur: NO Permissions ! !!!
                      donc je ne sais pas si se a couse de zabbix ou autre chose?????
                      ==> est-ce que tu donnes un user/password lorsque tu ouvres les pages zabbix avec firefox? Ou bien est-ce que tu l'as fait à un moment donné (il y a peut-être des cookies + la mémoire des mots de passe de firefox). Je ne sais absolument pas si les pages zabbix sont protégées par user/password ou non.

                      Si les pages ne sont pas protégées: est-ce que l'URL que tu as mis dans Swing pour tester le graphe fonctionne encore aujourd'hui dans firefox? (il s'agit peut-être d'un des nombreux paramètres de l'URL qui était OK vendredi et ne l'est plus aujourd'hui)
                  4. Et tu as essayé de mettre

                    http://localhost/zabbix/chart3.php?period=3600&from=0&items[0][itemid]=18472&items[0][drawtype]=1&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18470&items[1][drawtype]=1&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18473&items[2][drawtype]=1&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Utilization&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=1

                    en entier comme URL? Ou uniquement une partie?==> oui je le met en entier mais il m'affiche le code mais coder on peux pas le lire. le code commence par PNG

                    [EDIT] Ton URL semble mal forme, il faudrait rajouter un "&" entre les paramètres, je pense. Pas ==> mias par compte si je ajoute le & il m'affiche une erreur oui et j'ai bien le graphe a jour
                    1. Ah, oui, je comprends. S'il commence par png, c'est vraiment ton image qui est retournée (ton graphe). Mais JEditorPane s'attend à une URL contenant du code html (à savoir un truc qui commence par <html> et finit par </html> et qui a un header et un body... Ce n'est pas le cas d'une image. Mais tout n'est pas perdu pour autant, lol.

                      Mmmm, lemme think a bit...
                      Tu récupères un stream (les bits de l'image) ==> tu peux afficher ceci avec java2D (et même sans avoir besoin d'un JEditorPane). Mais ce souci se pose: comment est-ce que tu sauras par la suite quels sont les paramètres à passer? Lorsque je dis "paramètres", je fais référence à tout ce qui suit le "?" dans l'URL. Pour que ton programme serve à qqch, il faudra conaître la signification de ces paramètres (et il y en a un bon nombre)! pour pouvoir les changer au besoin depuis ton interface Swing.

                      Je cogite un peu pour un code d'affichage de l'image avec ton stream...
                  5. oui cest l'image pour moi je peux le voir en ce lien:
                    http://localhost/zabbix/chart3.php?period=3600&from=0&items[0][itemid]=18472&items[0][drawtype]=1&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18470&items[1][drawtype]=1&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18473&items[2][drawtype]=1&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Utilization&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=1

                    mais pour toi je ne sais pas peut etrs il faut apache,

                    pour le code source de l'image il est coder on peut pas le voir

                    il y a des paramètres qui vont avec, récupérés depuis les autres zones de la grande page html et/ou les pramaètres hidden. Comment veux-tu gérer cela (générer les bons paramètres)? Sans parler d'une authentification éventuelle zabbix (je ne sais pas si c'est la cas). =====> je n'ai pas compris???
                    1. Et tu as essayé de mettre
                      http://localhost/zabbix/chart3.php?period=3600&from=0&items[0][itemid]=18472&items[0][drawtype]=1&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18470&items[1][drawtype]=1&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18473&items[2][drawtype]=1&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Utilization&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=1

                      en entier comme URL? Ou uniquement une partie?

                      D'abord essaie d'ouvrir firefox et de mettre l'URL ci-dessus en entier ==> est-ce que tu vois le graphe?
                      Si ça ne marche toujours pas avec le composant Swing: bah, il doit y avoir plusieurs autres dialogues subtiles entre les composants de la page html (et du javascript) et malheureusement JEditorPane ne gère pas cela...
                    2. [EDIT] Ton URL semble mal forme, il faudrait rajouter un "&" entre les paramètres, je pense. Pas http://localhost/zabbix/chart3.php?period=3600&from=0&items[0][itemid]=18472&items[0][drawtype]=1&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18470&items[1][drawtype]=1&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18473&items[2][drawtype]=1&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Utilization&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=1
                      Mais
                      http://localhost/zabbix/chart3.php?period=3600&from=0&items[0]&[itemid]=18472&items[0][drawtype]=1&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18470&items[1][drawtype]=1&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18473&items[2][drawtype]=1&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Utilization&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=1
                  6. quant je recopie le graphe j'aurais une page html mais dedant il ya l'image de graphe, donc j' ai afficher limage dans le jEditorPane mais il m'affiche que le code de l'image ==> copie ici ton code. Bien sûr que JEDitorPane peut afficher une image si elle se trouve dans un html propre (pas trop de javascript, entre autres :)) Mais l l'image dont tu parles étant celle-ci
                    <td><img border="0" name="image" alt="image" src="chart3.php?period=3600&from=0&items[0][itemid]=18467&items[0][drawtype]=0&items[0][sortorder]=0&items[0][color]=990000&items[0][yaxisside]=1&items[0][calc_fnc]=2&items[0][type]=0&items[0][periods_cnt]=5&items[1][itemid]=18468&items[1][drawtype]=0&items[1][sortorder]=0&items[1][color]=009900&items[1][yaxisside]=1&items[1][calc_fnc]=2&items[1][type]=0&items[1][periods_cnt]=5&items[2][itemid]=18469&items[2][drawtype]=0&items[2][sortorder]=0&items[2][color]=999900&items[2][yaxisside]=1&items[2][calc_fnc]=2&items[2][type]=0&items[2][periods_cnt]=5&name=CPU+Loads&width=900&height=200&yaxistype=0&yaxismin=0.0000&yaxismax=100.0000&graphtype=0"/></td></tr>

                    il y a des paramètres qui vont avec, récupérés depuis les autres zones de la grande page html et/ou les pramaètres hidden. Comment veux-tu gérer cela (générer les bons paramètres)? Sans parler d'une authentification éventuelle zabbix (je ne sais pas si c'est la cas).
                    • 1
                    • 2
                    • 3