Bonjour
J'ai récupéré un petit programme "Hello world" d'un tuto wxPython de développez.com que voici :
# !/usr/bin/python
# -*- coding: iso885915 -*-
import wx
class Bonjour(wx.Frame):
def __init__(self, titre):
wx.Frame.__init__(self, None, 1,title = titre, size = (200, 100))
conteneur = wx.Panel(self, 1,size = self.
GetClientSize())
etiquette = wx.StaticText(conteneur, 1,"Bonjour tout le monde !",wx.ALIGN_CENTRE)
etiquette.CentreOnParent()
class MonApp(wx.App):
def OnInit(self):
fen = Bonjour("Exemple 1")
fen.Show(True)
self.SetTopWindow(fen)
return True
app = MonApp()
app.MainLoop()
J'utilise SPE 0.8.3.c sous windows (python 2.3) et la version de wxPyhton est la 2.6.1.0
à l'execution, il bloque et me dit "Class Bonjour has non attribute GetClientSize"
Donc je comprend bien qu'il ne la trouve puisqu'elle ne semble déclarée dans le code, mais je trouve tout de même bizarre car j'ai copié le code de plusieur tutos et à chaque fois il y a ce genre d'erreur et je doute que les tutos soit bourrés de fautes pour un simple "hello world". Donc ma question :
Est-ce réellement normal qu'il ne trouve pas la fonction GetClientSize qui me paraît, à partir du nom en tout cas, être une fonction qui pourrait être intégrée à la classe wx.Frame puisque si j'ai bien compris, self correspond à une instance de type wx.frame dérivé ?? De plus ça me parait bizarre tout ça car comme je l'ai dit, je retrouve ce problème dans plusieurs tutos, et je ne vois pas pourquoi car se sont toujours des fonctions qui, si elle ne le sont pas, devraient être intégrées dans les classes de bases de wxWidget.
Bref je ne comprend pas trop, si quelqu'un peut m'aider ?? j'ai pensé éventuellement à un problème de version de wxWidget (méthodes obsolètes, ou pas encore apparue en version 2.6.1.0,...)
Merci
RV
L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"