Fenetre transparente !!!

patricel Messages postés 4 Date d'inscription vendredi 12 mars 2004 Statut Membre Dernière intervention 8 septembre 2010 - 16 juil. 2004 à 15:39
 dZ - 10 oct. 2013 à 17:32
Salut,

je voudrais dessiner dans une fenêtre (Frame, Window, Applet... peu importe), mais en rendant la fenêtre transparente... Je ne voudrais voir que les objets que je dessine dans cette fenêtre, et ainsi par exemple voir le bureau windows derrière mes dessins.

Je sais dessiner dans une fenetre, mais je ne sais pas la rendre transparente!!!

Si qqn connait la solution, je serais bien content de la connaitre!

Merci d'avance.
Patrice

9 réponses

wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
16 juil. 2004 à 15:45
si tu surcharge la methode paint et que tu lui dit de ne rien faire, qu'est ce qui se passe?
0
patricel Messages postés 4 Date d'inscription vendredi 12 mars 2004 Statut Membre Dernière intervention 8 septembre 2010
16 juil. 2004 à 15:56
Si je surcharge la méthode paint (sans rien faire), ça ne rend pas transparente la fenetre, mais en plus, je ne pourrais rien dessiner...
0
wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
16 juil. 2004 à 16:48
le paintComponent
0
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 11
16 juil. 2004 à 18:15
GodConan :clown)

ben tou simplement parce que toute ressource graphic alouer par la JVM pocede deja un fond ;-((( ....
gros problem dc ;o) mais il existe malgré tou une solution asser complex pour resoudre le probleme (pas tant que ca ;o) )
il te suffi d afficher ds le fond de ta frame (...) la capture retailler du bureau window ( class Robot ) et ensuite de mettre l atribu opaque false a ta frame...

bien sur il te faudra prevoir un mecanisme de mise a jour en cas de deplacement de ta fenetre ;o)...

tu voi c pas si dur ;o)..

++
0

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

Posez votre question
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
21 mars 2005 à 22:22
Bidouille...
0
desastreux Messages postés 50 Date d'inscription mardi 30 mars 2004 Statut Membre Dernière intervention 5 août 2009
13 août 2005 à 15:11
Bonjour !



De mon côté, je viens de réaliser une petite applet sympa qui permets d'afficher dans une page HTML, donc, une horloge analogique faite de plusieurs bitmaps
( cadran, aiguilles, etc... ) : Les formules d'animation des aiguilles
s'adaptent aux tailles des bitmaps, ce qui permets notamment à tout un
chacun de facilement pouvoir personaliser cete horloge...

Elle offre de plus quelques atouts supplémentaires, avec par exemple
une gestion des calques alpha (transparence) sur une image de fond, un
redimensionnement par simple wheeling de la souris, la gestion du
drag'n drop, son déplacement aléatoire et plus ou moins rapide
sur le fond de l'applet, un menu contextuel, etc...



Mon objectif était de concevoir une applet dont la page HTML serait chargée comme fond d'écran animé de windows et
dont la transparence me permettrait de continuer à admirer les jambes
d'Adriana Lima ( mon mannequin préférré en fond d'écran)... Cela
recoupe un peu l'idée d'avoir un objet dessiné sur le bureau...

L'Applet est pour ainsi dire terminée et fonctionne dans mes navigateurs ( Mozillla Firefox, I.E. );

Si l'idée inspire quelqu'un, je suis d'ailleurs près à mettre mon code à disposition ( ENV 600 lignes )



Toutefois, je rencontre encore deux problèmes :

*************************************

_ Le premier est sans rapport avec le thème abordé ici, puisqu'il
s'agit seulement de la boulimie en ressources-Processeur des
BufferedImage lors de repaint() fréquents. La même horloge analogique
en Flash, intégrée dans un HTML que j'ai en fond d'écran, et qui se
mets à jour toutes les millisecondes, ne prends pour ainsi dire aucune
ressource et s'affiche trés correctement.

Pourquoi JAVA demande-t'il presque 95% du processeur lors d'un
repaint() hautement cadencé, et pourquoi encore 10% lors d'un repaint()
par seconde ? Bref, je commence à me demander l'intêret de faire du
graphisme en JAVA sur PC...



_ Le second problème est que si je visionne mon applet sans problème
dans les navigateurs, via un double-clic sur la page HTML; en revanche,
lorsque je mets mon applet en fond d'écran ( via les propriétés
d'affichage du Bureau XP ), celle-ci ne s'affiche pas correctement ( la
page reste grise, mais sans la moindre erreur pourtant... Alors que
d'autres applets du même genre passent quant à elles trés bien
que ce soit en navigateur ou bien en fond d'écran ...

Et que tous les objets FLASH / SVG aussi, bien sûr... )

Bref, si cela avait marché, cela aurait pu faire une solution peut-être acceptable au problème de Patricel...

Sauf qu'une applet dans une page HTML gène pour certaines manipulations sur le bureau ( clic droit, rectangle, etc... )



Donc, j'ai finalement changé d'avis : Je me suis dis qu'il serait plus
sympa d'adapter mon code vers une appli plus classique, et d'y rajouter
de la transparence ( Comme dans Winamp, par exemple... )

Sauf que voilà : Je bute alors sur le même problème; que ce soit pour
n'afficher que l'horloge, sans la JFrame ( container minimal ? ) censée
la contenir, ou bien une horloge transparente qui laisse entrevoir le
WallPaper ( à travers la JFrame ), ça bloque et y a rien à faire : Un
rectangle transparent comme fond de la JFrame donne du noir (?).



C'est pourquoi je compte bien me lancer dans une tentative avec la
class Robot dont parle godConan. Cependant, je n'ai pas encore trouvé
de documentation àce sujet, et de puisqu'il a l'air au fait de la
chose, cela aurait été trés chic de sa part s'il avait pu nous offrir
un petit code ( ou un lien ) à titre d'exemple d'utilisation de
cette class...



Je me demande si on pourra de toute façon avec ce bricolage parvenir ne
serait-ce qu'à effacer la barre-titre de la JFrame, et en plus, je
crains de m'apercevoir que le tout sera beaucoup trop gourmand au
final... Cest pourquoi, toute autre solution serait également la trés
bien venue, merci !
0
desastreux Messages postés 50 Date d'inscription mardi 30 mars 2004 Statut Membre Dernière intervention 5 août 2009
13 août 2005 à 15:22
En fait, GodConan tire ses infos de :

http://www.javafr.com/forum.v2.aspx?id=181501

ça devrait le faire, m'enfin un exemple simple serait quand même le bienvenu...
0
alex4142 Messages postés 6 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 22 février 2009
6 juin 2008 à 12:00
Bonjour,

j'aurais besoin d'aide pour afficher sur le bureau une fenetre web sans le fond blanc, exemple une horloge carrée l'on voit derrière le tour de la fenetre en blanc, c'est acceptable, mais une horloge ronde s'affiche egalement sur le carré blanc c'est très disgracieux, ma question : comment rendre transparent le fond blanc de cette fenetre ?

cordialement   Alex
0
sallam voila la solution je les testé avec un JFrame et un JLabel ça marche

yourFrameHere.setBackground(newColor(0,0,0,0));
yourContentPanelHere.setOpaque(false);

la source est la : http://stackoverflow.com/questions/6660908/how-to-make-jframe-transparent
0
BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 103
10 oct. 2013 à 15:45
Hello,
C'est sympa de poster une réponse...mais merci de laisser reposer les trèèèès vieux topics en paix =)
0
Pas d'accord ! Toute info est bonne à prendre, et, en plus, c'est pas parce que ça fait quelques années que c'est si vieux !
0
Rejoignez-nous