FAQ PythonConsultez toutes les FAQ

Nombre d'auteurs : 11, nombre de questions : 188, dernière mise à jour : 2 septembre 2018 

 
OuvrirSommaireGUIwxPython

Vous trouverez tous les liens pour télécharger wxPython sur la page http://wxpython.org/download.php. Vous pourrez récupérer les sources ou les binaires précompilés pour un bon nombre de distributions (Windows, Linux, Mac). Vous pourrez également télécharger les démos et exemples (environ 200), ressources indispensables pour apprendre efficacement à développer avec wxPython

Créé le 23 novembre 2006  par Guigui_

Les ressources en français sur wxPython sont relativement peu abondantes. En revanche vous pourrez facilement en récupérer en anglais. Voici les ressources principales qui vous seront utiles pour apprendre wxPython:

Tutoriels
Documentation officielle
Livres
Créé le 25 novembre 2006  par Guigui_

Pour changer l'icône d'une fenêtre, vous devez tout d'abord créer un objet de type wx.Icon. Pour cela, il vous faut appeler la fonction wx.Icon(name, type)name correspond au nom de l'icône à charger et type le type de l'image. Les types permis sont wx.BITMAP_TYPE_ICO, wx.BITMAP_TYPE_ICO_RESOURCE, wx.BITMAP_TYPE_GIF, wx.BITMAP_TYPE_XBM, wx.BITMAP_TYPE_XPM.
Vous assignez ensuite l'icône à la fenêtre en appliquant la méthode MaFrame.SetIcon(MonIcone)MonIcone est l'objet wx.Icon précédemment créé.

 
Sélectionnez

import wx

app = wx.PySimpleApp()
frameicon = wx.Icon("./appicon.ico", wx.BITMAP_TYPE_ICO)
frame  = wx.Frame(None, -1)
frame.SetIcon(frameicon)
frame.Show()
app.MainLoop()
Créé le 23 novembre 2006  par Guigui_

Il vous suffit lorsque vous créer le wx.TextCtrl de définir le paramètre style = wx.TE_PASSWORD.

 
Sélectionnez

import wx

app = wx.PySimpleApp()

frame = wx.Frame(None, -1)
panel = wx.Panel(frame, -1)
tc = wx.TextCtrl(panel, -1, style = wx.TE_PASSWORD, pos = (0,0))
btn = wx.Button(panel, -1, "Get", pos = (0, 30))

def GetPassword(event): print tc.GetValue()
    
btn.Bind(wx.EVT_BUTTON, GetPassword)
frame.Show()
app.MainLoop()
Créé le 23 novembre 2006  par Guigui_

Pour changer le curseur d'une fenêtre, il vous suffira de plus lui appliquer la méthode SetCursor avec comme paramètre le nouveau curseur. wxPython possède ses propres curseurs. Vous pouvez tout d'abord récupérer les curseurs de wxPython en invoquant la fonction wx.StockCursor(id)id correspondra à la constante définissant un curseur de wxPython.
Si votre curseur se trouve sous la forme d'un fichier, il vous suffit alors d'appeler le constructeur de la classe wx.Cursor avec le nom du fichier ainsi que son type qui doit être d'un type reconnu.
Sous Windows, ce peut être wx.BITMAP_TYPE_CUR (fichier curseur .cur ou .ani), wx.BITMAP_TYPE_CUR_RESOURCE, i (fichier icône .ico) Dans l'exemple suivant, il vous faudra au préalable créer un fichier arrowblue.cur et un wait.ani (curseur animé)

 
Sélectionnez

import wx

app = wx.PySimpleApp()

CURSOR_ANIWAIT = wx.Cursor("wait.ani", wx.BITMAP_TYPE_CUR)
CURSOR_ARROWBLUE = wx.Cursor("arrowblue.cur", wx.BITMAP_TYPE_CUR)
CURSOR_ARROW = wx.StockCursor(wx.CURSOR_ARROW)
CURSOR_HAND = wx.StockCursor(wx.CURSOR_HAND)


frm = wx.Frame(None)
lb = wx.ListBox(frm, -1, pos = (200, 200),  choices = ["WaitAni", "ArrowBlue", "Arrow", "Hand"], style = wx.LB_SINGLE)

def ChangeCursor(event):
    if event.GetString() == "WaitAni": frm.SetCursor(CURSOR_ANIWAIT)
    elif event.GetString() == "ArrowBlue": frm.SetCursor(CURSOR_ARROWBLUE)
    elif event.GetString() == "Arrow": frm.SetCursor(CURSOR_ARROW)
    elif event.GetString() == "Hand": frm.SetCursor(CURSOR_HAND)    
    
lb.Bind(wx.EVT_LISTBOX, ChangeCursor)

frm.Show(True)

app.MainLoop()
Créé le 24 juillet 2007  par Guigui_

Pour modifier la fonte des widgets (lorsque celle-ci est modifiable), on utilise en général la fonction disponible SetFont(font) de la classe wx.Window (tous les objets visibles à l'écran héritant de cette classe) où font représente un objet de type wx.Font.

Un objet de type wx.Font se construit facilement en fournissant au constructeur les paramètres suivants:
pointSize: entier donnant taille de la fonte en points
family à choisir parmi wx.FONTFAMILY_DEFAULT, wx.FONTFAMILY_DECORATIVE, wx.FONTFAMILY_ROMAN, wx.FONTFAMILY_SCRIPT, wx.FONTFAMILY_SWISS,
wx.FONTFAMILY_MODERN et wx.FONTFAMILY_TELETYPE
style à choisir parmi wx.FONTSTYLE_NORMAL, wx.FONTSTYLE_SLANT et wx.FONTSTYLE_ITALIC
weight à choisir parmi wx.FONTWEIGHT_NORMAL, wx.FONTWEIGHT_LIGHT et wx.FONTWEIGHT_BOLD
underline: Booléen indiquant si la fonte contient un soulignement
face: string indiquant la police ("Arial" par exemple)
encoding: encodage de la fonte.

 
Sélectionnez

import wx

app = wx.PySimpleApp()

frm = wx.Frame(None, -1)

lbl1 = wx.StaticText(frm, -1, "test de fonte", pos = (50, 30))
lbl2 = wx.StaticText(frm, -1, "test de fonte", pos = (50, 60))
lbl3 = wx.StaticText(frm, -1, "test de fonte", pos = (50, 90))
myfont1 = wx.Font(11, wx.FONTFAMILY_SWISS, wx.FONTSTYLE_ITALIC, wx.FONTWEIGHT_BOLD, False, "Arial")
myfont2 = wx.Font(8, wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_SLANT, wx.FONTWEIGHT_LIGHT, True, "Kristen ITC")
myfont3 = wx.Font(20, wx.FONTFAMILY_DECORATIVE, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False, "Verdana")
lbl1.SetFont(myfont1)
lbl2.SetFont(myfont2)
lbl3.SetFont(myfont3)
frm.Show(True)

app.MainLoop()
Créé le 21 août 2007  par Guigui_
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2005-2009 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.