Je souhaiterais afficher des pages HTML dans mon application Swing.
Il y a bien sur la classe JEditorPane mais le résultat obtenu, meme s'il est
simple à mettre en oeuvre, est plutôt mauvais (problème avec les layers, pas
de javascript).
Le mieux je pense serais d'utiliser un composant active X pour Internet
Explorer, mais je n'ai aucune expérience dans ce domaine : est ce
réalisable? Je pense que oui avec SWT qui permet apparemment d'intégrer des
composants active X.....
Ne connaissant que peu SWT et Active X, je serais preneur si quelqu'un
connaissait ou avait une simple piste d'un code "clef en main" pour utiliser
IE dans mon application Swing.....
C'est encore moi : Est il possible d'inclure un shell SWT dans un composant Swing? Je n'ai pas trouvé de méthode permettant de "caster" ces différents composants
"Seb X" a écrit dans le message de news: 3ff48330$0$28692$
C'est encore moi :
Est il possible d'inclure un shell SWT dans un composant Swing?
Je n'ai pas trouvé de méthode permettant de "caster" ces différents
composants
"Seb X" <seb_fromfrance@nospam-yahoo.fr> a écrit dans le message de news:
3ff48330$0$28692$626a54ce@news.free.fr...
C'est encore moi : Est il possible d'inclure un shell SWT dans un composant Swing? Je n'ai pas trouvé de méthode permettant de "caster" ces différents composants
"Seb X" a écrit dans le message de news: 3ff48330$0$28692$
Salut, Je te déconseille de faire ce genre de manip. Tu es en train de mélanger deux systèmes de fenêtrage totalement différents. SWT utilise des composants peer natifs (lié à l'OS) alors que Swing se base sur un modèle 100% java (enfin presque). Le L&F est différent, le threading, la gestion de la mémoire, etc... D'où le pb d'intégration que tu as entre un composant SWT Shell et une JFrame. L'exemple que tu as récupéré s'adresse aux applis 100% SWT, ce qui n'est pas ton cas. Si tu souhaites rester en Swing, fais plutôt appel à l'interopérabilité Java-COM. Il existe pas mal d'outils faisant ce genre de choses, mais si tu veux du travail maché télécharges ce zip (http://213.186.40.29/downloads/misc/swingexplorersample.zip) de 200Ko et lances le .bat QuickIE. Tu verras le composant IE apparaître dans une JFrame Swing avec même l'interception des évènements claviers/souris. Le code source du main() est dans le Zip, libres à toi de l'adapter. Pour résumer, cet exemple fait appel au bridge d'ibm http://www.alphaworks.ibm.com/tech/bridge2java (runtime léger) et les proxies Java de la TLB Shwdocvw.dll qui correspondent à la DLL d'IE sont déjà générés. En revanche, je te conseille de jeter un oeil sur la licence, le runtime est gratuit mais en béta selon IBM. Il te faudra également positionner ton path sur ton répertoire jre/bin d'un jdk supérieur ou égal à la 1.3. Les fonctionnalités sont celles de la version d'IE que tu auras installé sur ta machine, donc javascript/dhtml/plugin-flash marchent parfaitement (et rame surtout moins que JEditorPane).
Bon courage,
Sami ps: l'interop swing/swt est prévu dans eclipse 3.X http://www.eclipse.org/eclipse/development/eclipse_project_plan_3_0.html
"Seb X" a écrit dans le message de news:3ff499fd$0$28715$
C'est encore moi : Est il possible d'inclure un shell SWT dans un composant Swing? Je n'ai pas trouvé de méthode permettant de "caster" ces différents composants
"Seb X" a écrit dans le message de news: 3ff48330$0$28692$
Salut,
Je te déconseille de faire ce genre de manip. Tu es en train de mélanger
deux systèmes de fenêtrage totalement différents. SWT utilise des composants
peer natifs (lié à l'OS) alors que Swing se base sur un modèle 100% java
(enfin presque). Le L&F est différent, le threading, la gestion de la
mémoire, etc...
D'où le pb d'intégration que tu as entre un composant SWT Shell et une
JFrame. L'exemple que tu as récupéré s'adresse aux applis 100% SWT, ce qui
n'est pas ton cas. Si tu souhaites rester en Swing, fais plutôt appel à
l'interopérabilité Java-COM. Il existe pas mal d'outils faisant ce genre de
choses, mais si tu veux du travail maché télécharges ce zip
(http://213.186.40.29/downloads/misc/swingexplorersample.zip)
de 200Ko et lances le .bat QuickIE. Tu verras le composant IE apparaître
dans une JFrame Swing avec même l'interception des évènements
claviers/souris. Le code source du main() est dans le Zip, libres à toi de
l'adapter.
Pour résumer, cet exemple fait appel au bridge d'ibm
http://www.alphaworks.ibm.com/tech/bridge2java (runtime léger) et les
proxies Java de la TLB Shwdocvw.dll qui correspondent à la DLL d'IE sont
déjà générés.
En revanche, je te conseille de jeter un oeil sur la licence, le runtime est
gratuit mais en béta selon IBM.
Il te faudra également positionner ton path sur ton répertoire jre/bin d'un
jdk supérieur ou égal à la 1.3.
Les fonctionnalités sont celles de la version d'IE que tu auras installé sur
ta machine, donc javascript/dhtml/plugin-flash marchent parfaitement (et
rame surtout moins que JEditorPane).
Bon courage,
Sami
ps: l'interop swing/swt est prévu dans eclipse 3.X
http://www.eclipse.org/eclipse/development/eclipse_project_plan_3_0.html
"Seb X" <seb_fromfrance@nospam-yahoo.fr> a écrit dans le message de
news:3ff499fd$0$28715$626a54ce@news.free.fr...
C'est encore moi :
Est il possible d'inclure un shell SWT dans un composant Swing?
Je n'ai pas trouvé de méthode permettant de "caster" ces différents
composants
"Seb X" <seb_fromfrance@nospam-yahoo.fr> a écrit dans le message de news:
3ff48330$0$28692$626a54ce@news.free.fr...
Salut, Je te déconseille de faire ce genre de manip. Tu es en train de mélanger deux systèmes de fenêtrage totalement différents. SWT utilise des composants peer natifs (lié à l'OS) alors que Swing se base sur un modèle 100% java (enfin presque). Le L&F est différent, le threading, la gestion de la mémoire, etc... D'où le pb d'intégration que tu as entre un composant SWT Shell et une JFrame. L'exemple que tu as récupéré s'adresse aux applis 100% SWT, ce qui n'est pas ton cas. Si tu souhaites rester en Swing, fais plutôt appel à l'interopérabilité Java-COM. Il existe pas mal d'outils faisant ce genre de choses, mais si tu veux du travail maché télécharges ce zip (http://213.186.40.29/downloads/misc/swingexplorersample.zip) de 200Ko et lances le .bat QuickIE. Tu verras le composant IE apparaître dans une JFrame Swing avec même l'interception des évènements claviers/souris. Le code source du main() est dans le Zip, libres à toi de l'adapter. Pour résumer, cet exemple fait appel au bridge d'ibm http://www.alphaworks.ibm.com/tech/bridge2java (runtime léger) et les proxies Java de la TLB Shwdocvw.dll qui correspondent à la DLL d'IE sont déjà générés. En revanche, je te conseille de jeter un oeil sur la licence, le runtime est gratuit mais en béta selon IBM. Il te faudra également positionner ton path sur ton répertoire jre/bin d'un jdk supérieur ou égal à la 1.3. Les fonctionnalités sont celles de la version d'IE que tu auras installé sur ta machine, donc javascript/dhtml/plugin-flash marchent parfaitement (et rame surtout moins que JEditorPane).
Bon courage,
Sami ps: l'interop swing/swt est prévu dans eclipse 3.X http://www.eclipse.org/eclipse/development/eclipse_project_plan_3_0.html
"Seb X" a écrit dans le message de news:3ff499fd$0$28715$
C'est encore moi : Est il possible d'inclure un shell SWT dans un composant Swing? Je n'ai pas trouvé de méthode permettant de "caster" ces différents composants
"Seb X" a écrit dans le message de news: 3ff48330$0$28692$
Salut, Je te déconseille de faire ce genre de manip. Tu es en train de mélanger deux systèmes de fenêtrage totalement différents. SWT utilise des composants
peer natifs (lié à l'OS) alors que Swing se base sur un modèle 100% java (enfin presque). Le L&F est différent, le threading, la gestion de la mémoire, etc...
Vi effectivement, j'ai réussit à intégrer du Swing dans du SWT, mais l'inverse n'est pas possible (en fait si mais juste avec des Frames et j'ai besoin que cela soit intégrer dans un JPanel).
D'où le pb d'intégration que tu as entre un composant SWT Shell et une JFrame. L'exemple que tu as récupéré s'adresse aux applis 100% SWT, ce qui n'est pas ton cas. Si tu souhaites rester en Swing, fais plutôt appel à l'interopérabilité Java-COM. Il existe pas mal d'outils faisant ce genre de
choses, mais si tu veux du travail maché télécharges ce zip (http://213.186.40.29/downloads/misc/swingexplorersample.zip)
Tu me devances :-) Sachant que j'ai mis plusieurs semaines à programmer correctement l'appli Swing, je n'avais pas envie de tout refaire en SWT (d'autant que je ne connais pas l'API) meme si la fluidité du SWT est impressionante et l'intégration native est intéressante (toujours plus sympa les boites de dialogue ou de sélection de fichiers Windows à la place des memes en Swing). Si je pouvais revenir en arriere je referais probablement tout avec SWT tellement j'ai été convaincu des peu d'exemples que j'ai trouvé (et meme si l'API doit être beaucoup moins riche que Swing je suppose) Bref, je ne voyais plus que COM dans mon cas (jamais fait pour le moment, je m'attendais à galérer un bon moment), et toi tu me sert ca sur un plateau :-) ca marche impec :-)
Merci beaucoup pour ton aide
Sébastien
Salut,
Je te déconseille de faire ce genre de manip. Tu es en train de mélanger
deux systèmes de fenêtrage totalement différents. SWT utilise des
composants
peer natifs (lié à l'OS) alors que Swing se base sur un modèle 100% java
(enfin presque). Le L&F est différent, le threading, la gestion de la
mémoire, etc...
Vi effectivement, j'ai réussit à intégrer du Swing dans du SWT, mais
l'inverse n'est pas possible (en fait si mais juste avec des Frames et j'ai
besoin que cela soit intégrer dans un JPanel).
D'où le pb d'intégration que tu as entre un composant SWT Shell et une
JFrame. L'exemple que tu as récupéré s'adresse aux applis 100% SWT, ce qui
n'est pas ton cas. Si tu souhaites rester en Swing, fais plutôt appel à
l'interopérabilité Java-COM. Il existe pas mal d'outils faisant ce genre
de
choses, mais si tu veux du travail maché télécharges ce zip
(http://213.186.40.29/downloads/misc/swingexplorersample.zip)
Tu me devances :-)
Sachant que j'ai mis plusieurs semaines à programmer correctement l'appli
Swing, je n'avais pas envie de tout refaire en SWT (d'autant que je ne
connais pas l'API) meme si la fluidité du SWT est impressionante et
l'intégration native est intéressante (toujours plus sympa les boites de
dialogue ou de sélection de fichiers Windows à la place des memes en Swing).
Si je pouvais revenir en arriere je referais probablement tout avec SWT
tellement j'ai été convaincu des peu d'exemples que j'ai trouvé (et meme si
l'API doit être beaucoup moins riche que Swing je suppose)
Bref, je ne voyais plus que COM dans mon cas (jamais fait pour le moment, je
m'attendais à galérer un bon moment), et toi tu me sert ca sur un plateau
:-) ca marche impec :-)
Salut, Je te déconseille de faire ce genre de manip. Tu es en train de mélanger deux systèmes de fenêtrage totalement différents. SWT utilise des composants
peer natifs (lié à l'OS) alors que Swing se base sur un modèle 100% java (enfin presque). Le L&F est différent, le threading, la gestion de la mémoire, etc...
Vi effectivement, j'ai réussit à intégrer du Swing dans du SWT, mais l'inverse n'est pas possible (en fait si mais juste avec des Frames et j'ai besoin que cela soit intégrer dans un JPanel).
D'où le pb d'intégration que tu as entre un composant SWT Shell et une JFrame. L'exemple que tu as récupéré s'adresse aux applis 100% SWT, ce qui n'est pas ton cas. Si tu souhaites rester en Swing, fais plutôt appel à l'interopérabilité Java-COM. Il existe pas mal d'outils faisant ce genre de
choses, mais si tu veux du travail maché télécharges ce zip (http://213.186.40.29/downloads/misc/swingexplorersample.zip)
Tu me devances :-) Sachant que j'ai mis plusieurs semaines à programmer correctement l'appli Swing, je n'avais pas envie de tout refaire en SWT (d'autant que je ne connais pas l'API) meme si la fluidité du SWT est impressionante et l'intégration native est intéressante (toujours plus sympa les boites de dialogue ou de sélection de fichiers Windows à la place des memes en Swing). Si je pouvais revenir en arriere je referais probablement tout avec SWT tellement j'ai été convaincu des peu d'exemples que j'ai trouvé (et meme si l'API doit être beaucoup moins riche que Swing je suppose) Bref, je ne voyais plus que COM dans mon cas (jamais fait pour le moment, je m'attendais à galérer un bon moment), et toi tu me sert ca sur un plateau :-) ca marche impec :-)