FAQ Python
FAQ PythonConsultez toutes les FAQ
Nombre d'auteurs : 11, nombre de questions : 188, dernière mise à jour : 14 juin 2021
Les ressources en français sur PyGTK sont relativement peu abondantes. Vous avez cependant à votre disposition un tutoriel et sa traduction qui vous
apportetons énormément d'informations.
- Tutoriel PyGTK 2.0 (traduction)
- PyGTK Tutorial 2.0
Lorsque vous appelez une fonction qui prend énormément de temps et qui se passe dans le thread principal, il arrive que l'application se fige. Néanmoins, vous pouvez forcer le raffraîchissement de l'application en rajoutant à des endroits stratégiques l'instruction gtk.main_iteration().
# -*- coding: cp1252 -*-
import
pygtk
pygtk.require
(
'2.0'
)
import
gtk, gobject
class
TestUpdate:
def
affiche
(
self, widget, data=
None
):
for
i in
range(
100000
):
self.lbl.set_text
(
str(
i))
## Raffraîchissement de la fenêtre pour voir l'apparition de tous les nombres
gtk.main_iteration
(
)
def
__init__
(
self):
self.window =
gtk.Window
(
gtk.WINDOW_TOPLEVEL)
self.window.set_resizable
(
True
)
self.window.set_title
(
"Test Raffraîchissement"
)
self.window.set_border_width
(
0
)
vbox =
gtk.VBox
(
False
, 5
)
vbox.set_border_width
(
10
)
self.window.add
(
vbox)
vbox.show
(
)
align =
gtk.Alignment
(
0.5
, 0.5
, 0
, 0
)
vbox.pack_start
(
align, False
, False
, 5
)
align.show
(
)
self.lbl =
label =
gtk.Label
(
''
)
align.add
(
self.lbl)
self.lbl.show
(
)
button =
gtk.Button
(
"Affiche"
)
button.connect
(
"clicked"
, self.affiche)
vbox.pack_start
(
button, False
, False
, 0
)
button.set_flags
(
gtk.CAN_DEFAULT)
button.grab_default (
)
button.show
(
)
self.window.show
(
)
def
main
(
):
gtk.main
(
)
return
0
if
__name__
==
"__main__"
:
TestUpdate
(
)
main
(
)