-
Notifications
You must be signed in to change notification settings - Fork 0
/
ch-RangeWidgets.html
120 lines (106 loc) · 6.28 KB
/
ch-RangeWidgets.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-15" http-equiv="Content-Type">
<title>Chapitre 8. Les widgets d'intervalle</title>
<link rel="stylesheet" href="pygtktutfr.css" type="text/css">
<meta name="keywords" content="python,pygtk,tutoriel,traduction,intervalle">
<link rel="start" href="index.html" title="Tutoriel PyGTK 2.0">
<link rel="home" href="index.html" title="Table des matières">
<link rel="up" href="index.html" title="Table des matières">
<link rel="previous" href="sec-AdjustmentInternals.html" title="7.3. Les ajustements en détail">
<link rel="next" href="sec-ScaleWidgets.html" title="8.2. Les gradateurs">
</head>
<body>
<div class="localisation">
Vous êtes à peu près ici :
<a href="../../index.html">Accueil</a> »
<a href="../pygtktut.php">tutoriel PyGTK</a> »
<a href="index.html">PyGTK : sommaire</a>
</div> <!-- fin localisation -->
<div class="navheader">
<table width="100%" summary="En-tête de navigation">
<tr>
<th colspan="3" align="center">Chapitre 8. Les widgets d'intervalle</th>
</tr><tr>
<td width="20%" align="left"><a accesskey="p" href="sec-AdjustmentInternals.html">Préc.</a></td>
<th width="60%" align="center"></th>
<td width="20%" align="right"><a accesskey="n" href="sec-ScaleWidgets.html">Suiv.</a></td>
</tr></table>
<hr>
</div>
<div class="chapter"><div class="titlepage">
<div><h2 class="title"><a name="WidgetsIntervalle"></a>Chapitre 8. Les widgets d'intervalle</h2></div></div>
<div class="toc"><p><b>Table des matières</b></p>
<dl>
<dt>8.1. <a href="ch-RangeWidgets.html#sec-ScrollbarWidgets">HScrollbar et VScrollbar : les barres de défilement</a></dt>
<dt>8.2. <a href="sec-ScaleWidgets.html">HScale et VScale : les gradateurs</a></dt>
<dd><dl>
<dt>8.2.1. <a href="sec-ScaleWidgets.html#id3049331">Créer un gradateur</a></dt>
<dt>8.2.2. <a href="sec-ScaleWidgets.html#id3049384">Méthodes et signaux (enfin, au moins méthodes...)</a></dt>
</dl></dd>
<dt>8.3. <a href="sec-CommonRangeMethods.html">Méthodes communes aux widgets d'intervalle</a></dt>
<dd><dl>
<dt>8.3.1. <a href="sec-CommonRangeMethods.html#id3060169">Définir le mode d'actualisation</a></dt>
<dt>8.3.2. <a href="sec-CommonRangeMethods.html#id3060239">Définir et récupérer les ajustements</a></dt>
</dl></dd>
<dt>8.4. <a href="sec-KeyAndMouseBindings.html">Clavier et souris</a></dt>
<dt>8.5. <a href="sec-RangeWidgetExample.html">Démonstration des widgets d'intervalle</a></dt>
</dl>
</div>
<p>La catégorie des widgets d'intervalle (<tt>gtk.Range</tt>) inclut l'incontournable
barre de défilement ainsi que le "gradateur", un peu moins courant. Bien
que l'on utilise généralement ces deux types d'objets à différentes
fins, ils sont assez similaires dans leur implémentation et leur fonctionnement. Les
widgets d'intervalle ont un jeu d'éléments graphiques commun : la coulisse et
le curseur, qui possèdent tous les deux leur propre fenêtre X et qui
reçoivent des évènements. Pour faire avancer ou reculer le curseur dans
la coulisse on peut le tirer avec la souris ou bien cliquer directement dans la coulisse.
Dans ce second cas, et selon le bouton de la souris utilisé, le curseur viendra se
positionner à l'endroit du clic ou s'en rapprochera suivant un pas
préféfini.</p>
<p>Comme nous venons de le voir dans le chapitre sur les <a href="ch-Adjustments.html"
title="Chapitre 7. Les ajustements">ajustements</a>, tous les widgets d'intervalle sont
associés à un <tt>gtk.Adjustment</tt>, à partir duquel ils calculent
la longueur du curseur et sa position dans la coulisse. Lorsque l'utilisateur manipule
le curseur, le widget d'intervalle modifie la valeur de l'ajustement.</p>
<div class="sect1"><div class="titlepage">
<div><h2 class="title" style="clear: both"><a name="sec-ScrollbarWidgets"></a>8.1. HScrollbar
et VScrollbar : Les barres de défilement</h2></div></div>
<p>Voici les très classiques barres de défilement. Elles ne devraient
être employées que pour faire défiler un autre widget, comme une
liste, une zone de texte ou une vue orientable (il est même bien plus pratique
d'utiliser une fenêtre à défilement dans la plupart des cas). Pour
le reste, les gradateurs seront plus appropriés, car plus simples d'utilisation
et offrant plus de fonctionnalités.</p>
<p>Les barres de défilement horizontale et verticale sont implémentées
dans deux types différents. Il n'y a pas grand-chose à dire à leur
sujet. On les crée en appelant l'une de ces méthodes :</p>
<pre class="programlisting">
barredefil_h = gtk.HScrollbar(<b><tt>adjustment</tt></b>=None)
barredefil_v = gtk.VScrollbar(<b><tt>adjustment</tt></b>=None)
</pre>
<p>... et voilà tout. L'argument <i><tt>adjustment</tt></i> (ajustement) attend
une référence à un
<a href="ch-Adjustments.html" title="Chapitre 7. Les ch-Adjustments.html">
<tt>ajustement</tt></a> existant. Si vous ne lui en fournissez pas,
la méthode en créera un pour vous, ce qui peut être
intéressant si vous voulez transmettre ce nouvel ajustement à
la méthode constructeur d'un autre widget, qui se chargera de le configurer
pour vous (une zone de texte, par exemple).</p>
</div></div>
<div class="navfooter">
<hr>
<table width="100%" summary="Bas de page de navigation">
<tr>
<td width="40%" align="left"><a accesskey="p" href="sec-AdjustmentInternals.html">Préc.</a></td>
<td width="20%" align="center"><a accesskey="u" href="index.html">Chapitre parent</a></td>
<td width="40%" align="right"><a accesskey="n" href="sec-ScaleWidgets.html">Suiv.</a></td>
</tr><tr>
<td width="40%" align="left" valign="top">7.3. Les ajustements en détail</td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Table des matières</a></td>
<td width="40%" align="right" valign="top">8.2. HScale et VScale : les gradateurs</td>
</tr></table>
</div>
</body>
</html>