accès aux groupes de discussion, consultation et publication d'articles, recherche de "newsgroups"...
membres, identifiez-vous
é-mail Mot de passe
nouveau ? mot de passe oublié ?
Chargement... Chargement en cours...

Groupes français belges canadiens suisses internationaux Nétiquette
Échangez opinions et commentaires dans les forums de discussion.

Problème de fonctionnement de la barre de défilement en relation avec un canevas

 [  Nouvelle Discussion Nouvelle discussion  |  Répondre au groupe Répondre au groupe  |  fr.comp.lang.tcl ] 

Retour : Accueil du site fr comp lang tcl   charte stats de ce groupe


  Sujet:   Problème de fonctionnement de la barre de défilement en relation avec un canevas  
 De: ...@bluemail.ch (frf)
 Groupes: fr.comp.lang.tcl
 Organisation: Bluewin AG
 Date: 28. Apr 2008, 20:29:55
Salut.

J'aimerai lister les différentes polices de caractères de mon système dans 
un fichier postscript à l'aide des commandes du langage Tcl-Tk. J'ai essayé 
de créer un texte avec les différentes police dans un canvas afin de les 
imprimer selon le format postscript.
J'ai un problème au niveau de la barre de défilements (scrollbar) dans le 
canevas: elle est bloquée. Pourtant de nouvelles valeurs sont créées à 
l'intérieur du canevas par "$trame.cnv create text ..."

Comment faire marcher la scrollbar et le canevas ensemble pour que je puisse 
faire défiler les valeur de texte ainsi créées à l'intérieur du canevas?

Merci d'avance!

A+

--------------------------------------------------------------------------------------------------------------------------
Voici le code:

#\ exec tclsh "$0" ${1+"$@"}
#console show

package require Tk

 #--------------------------------

 proc Attendre {} {
 global trame;
 global value
 set value 0;
 while { $value == 0 } {
         update;
         bind $trame.bouton_Continuer <Button> {global value; set value 1 }
 }; #end of while

 };#end of Attendre

 #--------------------------------

 proc Impression {} {
 global trame;

 # Path to the gswin32c.exe:
 #set gspath {C:\\Program Files\\gs\\gs8.61\\bin\\gswin32c.exe}

 # Open pipe to gs:
 #set gs [open "|\"$gspath\" -q -sDEVICE=mswinpr2 -dNOPAUSE -dBATCH -" w];

 # Print the page:
 #$trame.cnv postscript -channel $gs
 $trame.cnv postscript -file "[pwd]\\Test.ps"

 # Close the pipe, sends page to printer:
 #close $gs

 exit
 };#end of Impression

 #--------------------------------

 catch {destroy .fr}
 wm title . "Liste des polices de caractères";
 set trame [frame .fr]
# set trame2 frame $trame.fr2];
 # Create a canvas:
 label $trame.etiquette -justify center;
 button $trame.bouton_Continuer -text "Continuer"
 canvas $trame.cnv -background white -yscrollcommand "$trame.ascenseur set";
 scrollbar $trame.ascenseur -command "$trame.cnv yview";
 button $trame.bouton -command Impression -text "Print";

 pack $trame
 pack $trame.etiquette -side top
 pack $trame.bouton_Continuer
 pack $trame.cnv -side left -fill x -fill y
 pack $trame.ascenseur -side left -fill y
 pack $trame.bouton -side bottom

 set ListeFonts [font families];
 set indice 0;
 set ContinueOK 1;
 while { $indice <= [llength $ListeFonts] } {
          set police [lindex $ListeFonts [expr $indice + 3]];
          set texte_etiquette 
"$police\n\nabcdefghijklmnopqrstuvwxyz\nABCDEFGHIJKLMNOPQRSTUVWXYZ\n0123456789"
          set etiquette [$trame.etiquette configure -text 
$texte_etiquette -font [list $police 14]];
          # Add something for printing:
          set texte_police 
"abcdefghijklmnopqrstuvwxyz\nABCDEFGHIJKLMNOPQRSTUVWXYZ\n0123456789";
          $trame.cnv create text 3.5c [expr 2 * $indice + 1.5]c -justify 
center -text $texte_police -font [list $police 14];
          incr indice;
          Attendre;
 };#end of while


DateSujet  Auteur
01.01.
o 
Groups Explorer contact votre avis comment ça marche? rechercher un groupe suggérer un groupe abuse accueil du site   Imprimer cette page   Envoyer cette page à un(e) ami(e)
Free counter and web stats