# Autres langages > Python > GUI >  Faire des Jolis fenetres ?

## kedare

Salut !
je voudrais savoir si il est possible de faire des fenetres qui soit pas carr , mais avec des bords arrondit , de la forme que l'on veut ?
un peut comme ca :

Si oui , comment ?
Merci  ::):

----------


## getupa

Regarde du cot de PyUI. Je ne sais pas si tu pourra faire exactement la mme chose, mais a devrais t'aider !

----------


## kedare

> Regarde du cot de PyUI. Je ne sais pas si tu pourra faire exactement la mme chose, mais a devrais t'aider !


Pyui c'est pour faire des interfaces a l'interieur d'une application  ::): 
c'est pas ca

----------


## airod

peut tre en utilisant l'effet de transparence des frames, en y ajoutant les images de fond que l'on choisi.

c'est une ide!  ::):

----------


## Alain_72

La fentre que tu nous montres est un graphique affich sur une page web.
C'est le wm (windows manager) de ton OS et le thme qui y est appliqu qui font la forme de ta fentre.
Par exemple sous linux avec le wm metacity dans l'environnement gnome tu peux avoir une fentre  bords arrondis comme celle-ci :

Et si tu dveloppes avec wxPython, toutes tes fentres, dans cet environnement auront des bords arrondis tout pareil.

----------


## kedare

c'est a dire ?
tu peut mettre un exemple de code ?

----------


## airod

ca veut dire que les bord arrondis de ta fenetre sont indpendants de ton programme, c'est ton OS qui fait l'affichage.

----------


## Olivier_

> ca veut dire que les bord arrondis de ta fenetre sont indpendants de ton programme, c'est ton OS qui fait l'affichage.


Oui, ... mais non  ::D: 

ce n'est pas ce qui est recherch ici, ce n'est pas une fentre spcifique  un thme, mais bien  un programme.

Prenons l'exemple de Winamp, le clbre lecteur multimdia.
En version 3 et 5, les skins utilises sont *trs* volues, permettent d'utiliser des bords arrondis, des formes varies etc, indpendament du thme windows utilis.

C'est ici l'effet recherch il me semble.

Je sais que les skins winamps sont bases sur des fichiers XML et un template de sprites il me semble, mais au niveau de la gestion, aucune ide.

----------


## airod

je crois que pour ca faut regarder du cot du c/c++
en python je crois pas que l'on puisse le faire directement.

ceci dit, il y a des applets sous linux, qui sont skinnable a partir de skins ecrit en python, mais le prog principale est crit en c.

sinon comme je le disais plus haut il faut voir du cot de la transparence des frames, mais est ce qu'on peut y mettre une image avec de la trasparence tel un gif?

----------


## Olivier_

> je crois que pour ca faut regarder du cot du c/c++
> en python je crois pas que l'on puisse le faire directement.


Hmm... je ne suis pas expert, mais je pense que c'est indpendant du langage utilis non ?

Je pense qu'il s'agit plutt de la librairie (wx, Tkinter, QT, etc) qui dtermine la faisabilit de la chose. non ?

----------


## kedare

surement , mais la quelle ? :/
au pire , une fenetre carre mais avec une image de fond et tout personalisable dedans (a la facon d'un flash en faite)

----------


## Terri

Cela doit tre fesable en utilisant les winforms sous iron python.

----------


## patemino

Salut les gars...

Bon alors je vais vous faire part de ma faible exprience dans ce domaine...


C'est beau hein ?  ::D:  

Mais c'est galre  faire (car peu document)... et malheureusement absoluement pas portable  ::aie::  

Pour ma part j'utilise wxPython (je n'ai aucune exprience avec les autres GUITK).

Ma cration de Frame :


```
wx.Frame.__init__(self, None, -1, "Titre de la fenètre", self.pos, self.size, wx.FRAME_NO_TASKBAR|wx.NO_BORDER)
```

Et aprs je bosse qu'avec des :


```

```

Pas question ensuite malheureusement d'utiliser un contrle d'origine sous peine de ... catastrophe  ::mrgreen::  
Faut tout refaire  ::): 

Par contre ... comme je l'ai dit ... a passe pas trop sous linux  ::): 
Pas de transparence du fond de la fentre  :8O:

----------


## pacificator

dans la demo de wxPython => Miscellaneous => ShapedWindow

----------


## airod

j'y repense maintenant, mais peut tre que la solution est du cot de la lib PyOSD.
Si j'ai bien compris ca permet de faire des choses comme ca.
a vrifier quand mme.

Bonne anne 2007 a tous

----------

