Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

INTERFACE GRAPHIQUE POUR EN CREER D'AUTRE....


Information sur la source

Catégorie :Application complète Classé sous : facile, rapide, interface, debutant, xeolin Niveau : Expert Date de création : 09/06/2006 Date de mise à jour : 15/05/2009 16:32:18 Vu : 4 466

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

Essenciel :

je vous explique les utilitaires (même si il n'y en pas besoin...) :

Onglet apparence :

  couleur relief :
    1 couleur de la page (...)
    2 relief (si vous mettez rien alors "Pas de relief" se mettera)
    3 taille des relief (...)

  titre :
    1 titre (titre sur la barre de tache; ne pas utiliser avec la fonction ci dessous)

  barre de tache (supprimer la barre de tache)

onglet objet :
  Fenetre pour dessiner (...)
    taille (...)

  Label 1-3
    texte sur le label (...)
    couleur de fond + texte (...)
    relief (si vous mettez rien alors "Pas de relief" se mettera)

  Bouton quitter (...)
    texte sur le bouton (...)
    couleur de fond + texte (...)
    relief (si vous mettez rien alors "Pas de relief" se mettera)
    Disble (pour desactiver le bouton)

les +
   c'est simple

creer
  1 entrer le nom du fichier affin de le creer
  2 ...

 

Source

  • # -*- coding: cp1252 -*-
  • import Tkinter
  • import Pmw
  • from tkMessageBox import *
  • colours = ('Relief sortant', 'Relief rentrant', 'Pas de relief', 'Crête','Sillon', 'Bordure')
  • flag=[0,0,0,0,0,[Tkinter.RAISED,Tkinter.FLAT,Tkinter.FLAT,Tkinter.FLAT,Tkinter.FLAT],0,0,0,0]
  • class Demo:
  • def __init__(self, parent):
  • parent.bind('<Control-s>',self.cf)
  • self.parent=parent
  • # Create and pack the NoteBook.
  • self.notebook = Pmw.NoteBook(parent)
  • self.notebook.pack( expand = 1, padx = 10, pady = 10)
  • # Add the "Appearance" page to the notebook.
  • self.page4 = self.notebook.add(' Apparence ')
  • self.notebook.tab(' Apparence ').focus_set()
  • self.page = self.notebook.add(' Objet ')
  • self.notebook.tab(' Objet ').focus_set()
  • self.page2 = self.notebook.add(' les + ')
  • self.notebook.tab(' les + ').focus_set()
  • self.page3 = self.notebook.add(' creer ')
  • self.notebook.tab(' creer ').focus_set()
  • # Create the "Toolbar" contents of the page.
  • self.group4 = Pmw.Group(self.page4, tag_text = 'Couleur')
  • self.group4.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
  • self.group5 = Pmw.Group(self.page, tag_text = 'Canvas')
  • self.group5.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
  • self.group2 = Pmw.Group(self.page, tag_text = 'Label')
  • self.group2.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
  • self.group6 = Pmw.Group(self.page4, tag_text = 'Titre')
  • self.group6.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
  • self.group65 = Pmw.Group(self.page4, tag_text = 'Bare de tache')
  • self.group65.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
  • self.group2_1 = Pmw.Group(self.group2.interior(), tag_text = 'Label-1')
  • self.group2_1.grid( row = 0, column = 0,padx = 10, pady =10)
  • self.group2_2 = Pmw.Group(self.group2.interior(), tag_text = 'Label-2')
  • self.group2_2.grid( row = 0, column = 1,padx = 10, pady =10)
  • self.group2_3 = Pmw.Group(self.group2.interior(), tag_text = 'Label-3')
  • self.group2_3.grid( row = 1, column = 0,padx = 10, pady =10)
  • self.b5=Tkinter.Button(self.page3,text='Creer le fichier',command=self.cf)
  • self.b5.grid(row = 1, column = 0,columnspan=2 ,padx = 50, pady = 40)
  • self.group3 = Pmw.Group(self.page, tag_text = 'Bouton')
  • self.group3.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
  • self.group = Pmw.Group(self.group3.interior(), tag_text = 'Bouton quiter')
  • self.group.grid(row = 0, column = 0, padx = 10, pady = 10)
  • self.group0 = Pmw.Group(self.page2, tag_text = 'Importation en +')
  • self.group0.pack(padx = 10, pady = 10)
  • self.group01 = Pmw.Group(self.page2, tag_text = 'definition en +')
  • self.group01.pack(padx = 10, pady = 10)
  • self.group02 = Pmw.Group(self.page2, tag_text = 'widjet en +')
  • self.group02.pack(padx = 10, pady = 10)
  • self.b1 = Tkinter.Checkbutton(self.group.interior(), text = 'Bouton quiter',command=self.but)
  • self.b1.grid(row = 0, column = 0)
  • self.b6 = Tkinter.Checkbutton(self.group4.interior(), text = 'couleur/relief',command=self.but6)
  • self.b6.grid(row = 0, column = 0)
  • self.b7 = Tkinter.Checkbutton(self.group6.interior(), text = 'Titre',command=self.but7)
  • self.b7.grid(row = 1, column = 0)
  • self.Ent = Tkinter.Entry(self.page3)
  • self.Ent.grid(row = 0, column = 1)
  • self.Ent.insert('0','1.py')
  • self.Lab = Tkinter.Label(self.page3,text='Localisation :')
  • self.Lab.grid(row = 0, column = 0)
  • self.b2 = Tkinter.Checkbutton(self.group2_1.interior(), text = 'Label-1',command=self.lab1)
  • self.b2.grid(row = 0, column = 0)
  • self.b3 = Tkinter.Checkbutton(self.group2_2.interior(), text = 'Label-2',command=self.lab2)
  • self.b3.grid(row = 0, column = 0)
  • self.bb = Tkinter.Checkbutton(self.group5.interior(), text = 'Fenetre pour dessiner',command=self.labb)
  • self.bb.grid(row = 0, column = 0)
  • self.b4 = Tkinter.Checkbutton(self.group2_3.interior(), text = 'Label-3',command=self.lab3)
  • self.b4.grid(row = 0, column = 0)
  • self.b45 = Tkinter.Checkbutton(self.group65.interior(), text = 'Barre de tache',command=self.aegis2)
  • self.b45.grid(row = 0, column = 0)
  • self.txt=Pmw.ScrolledText(self.group0.interior(),borderframe = 1,
  • usehullsize = 1,
  • hull_width =200,hull_height =100,
  • text_padx = 10,text_pady = 10)
  • self.txt.pack()
  • self.txt1=Pmw.ScrolledText(self.group01.interior(),borderframe = 1,
  • usehullsize = 1,
  • hull_width =200,hull_height =100,
  • text_padx = 10,text_pady = 10)
  • self.txt1.pack()
  • self.txt2=Pmw.ScrolledText(self.group02.interior(),borderframe = 1,
  • usehullsize = 1,
  • hull_width =200,hull_height =100,
  • text_padx = 10,text_pady = 10)
  • self.txt2.pack()
  • self.notebook.setnaturalsize()
  • def cf(self,event=None) :
  • if flag[1] :
  • a1 = '\nLabel(text="%s",bg="%s",fg="%s",relief="%s").pack()'%(self.ent1.get(),self.ent1_.get(),self.ent1__.get(),flag[5][1])
  • else :
  • a1=''
  • if flag[2] :
  • a2 = '\nLabel(text="%s",bg="%s",fg="%s",relief="%s").pack()'%(self.ent2.get(),self.ent2_.get(),self.ent2__.get(),flag[5][2])
  • else :
  • a2=''
  • if flag[3] :
  • a3 = '\nLabel(text="%s",bg="%s",fg="%s",relief="%s").pack()'%(self.ent3.get(),self.ent3_.get(),self.ent3__.get(),flag[5][3])
  • else :
  • a3=''
  • if flag[4]:
  • a35='disable'
  • else :
  • a35='normal'
  • if flag[0] :
  • a4 = '\nButton(text="%s",bg="%s",fg="%s",command=exit,stat="%s",relief="%s").pack()'%(self.ent.get(),self.ent_.get(),self.ent__.get(),a35,flag[5][0])
  • else :
  • a4=''
  • if flag[6] :
  • a5 = '\nroot.configure(bg="%s",relief="%s",bd=%s)'%(self._ent.get(),flag[5][4],self._ent_.get())
  • else :
  • a5=''
  • if flag[7] :
  • a6 = '\nroot.title("%s")'%(self.__ent.get())
  • else :
  • a6='\nroot.title("Tk")'
  • if flag[8] :
  • a7 ="""
  • def bit (event) :
  • can.create_line(event.x,event.y,event.x+1,event.y+1,fill='grey100')"""
  • a8= """can = Canvas(bg='grey0',height=%s,width=%s)
  • can.pack()
  • can.bind('<Motion>',bit)"""%(self.ae.get(),self.ae.get())
  • else :
  • a8=a7=''
  • if flag[9] :
  • a9='\nroot.overrideredirect(TRUE)'
  • else :
  • a9=''
  • self.main="""####Importation####
  • from Tkinter import *
  • %s
  • from sys import exit
  • ####/Importation####
  • ####Fonctions####
  • %s
  • %s
  • ####/Fonctions####
  • ####Widjet####
  • root=Tk()%s%s%s%s%s%s%s
  • %s
  • %s
  • root.mainloop()
  • ####/Widjet####"""%(self.txt.get(),a7,self.txt1.get(),a1,a2,a9,a3,a4,a5,a6,a8,self.txt2.get())
  • open(self.Ent.get(),'w+').write(self.main)
  • self.parent.bell()
  • def but (self):
  • global flag
  • if flag[0]:
  • flag[0]=0
  • self.lab.destroy()
  • self.ent.destroy()
  • self.lab_.destroy()
  • self.ent_.destroy()
  • self.lab__.destroy()
  • self.ent__.destroy()
  • self.b5.destroy()
  • self.dropdown.destroy()
  • flag[5][0]=Tkinter.RAISED
  • self.notebook.setnaturalsize()
  • else :
  • flag[0]=1
  • self.ent=Tkinter.Entry(self.group.interior())
  • self.ent.grid(row = 1, column = 1)
  • self.lab=Tkinter.Label(self.group.interior(),text='Texte sur le bouton :')
  • self.lab.grid(row = 1, column = 0)
  • self.ent_=Tkinter.Entry(self.group.interior())
  • self.ent_.grid(row = 2, column = 1)
  • self.lab_=Tkinter.Label(self.group.interior(),text='Couleur de fond :')
  • self.lab_.grid(row = 2, column = 0)
  • self.ent__=Tkinter.Entry(self.group.interior())
  • self.ent__.grid(row = 3, column = 1)
  • self.lab__=Tkinter.Label(self.group.interior(),text='couleur du texte :')
  • self.lab__.grid(row = 3, column = 0)
  • self.ent__.insert ('0','grey0')
  • self.ent_.insert ('0','grey100')
  • self.b5 = Tkinter.Checkbutton(self.group.interior(), text = '<= Disable',command=self.but1)
  • self.b5.grid(row = 4, column = 0,columnspan=2)
  • self.dropdown = Pmw.ComboBox(self.group.interior(),
  • label_text = 'Relief : ',
  • labelpos = 'nw',
  • selectioncommand = self.but2,
  • scrolledlist_items = colours,
  • )
  • self.dropdown.grid(row = 5, column = 0,columnspan=2)
  • self.notebook.setnaturalsize()
  • def but6 (self):
  • global flag
  • if flag[6]:
  • flag[6]=0
  • self._ent.destroy()
  • self._lab.destroy()
  • self._lab_.destroy()
  • self._ent_.destroy()
  • self.dropdown4.destroy()
  • self.notebook.setnaturalsize()
  • flag[5][4]=Tkinter.FLAT
  • else :
  • flag[6]=1
  • self._ent=Tkinter.Entry(self.group4.interior())
  • self._ent.grid(row = 1, column = 1)
  • self._lab=Tkinter.Label(self.group4.interior(),text='couleur de la page :')
  • self._lab.grid(row = 1, column = 0)
  • self._ent.insert('0','grey')
  • self._ent_=Tkinter.Entry(self.group4.interior())
  • self._ent_.grid(row = 3, column = 1)
  • self._lab_=Tkinter.Label(self.group4.interior(),text='taille des relief :')
  • self._lab_.grid(row = 3, column = 0)
  • self._ent_.insert('0','3')
  • self.dropdown4 = Pmw.ComboBox(self.group4.interior(),
  • label_text = 'Relief : ',
  • labelpos = 'nw',
  • selectioncommand = self.but5,
  • scrolledlist_items = colours,
  • )
  • self.dropdown4.grid(row = 2, column = 0,columnspan=2)
  • self.notebook.setnaturalsize()
  • def but7 (self):
  • global flag
  • if flag[7]:
  • flag[7]=0
  • self.__ent.destroy()
  • self.__lab.destroy()
  • self.notebook.setnaturalsize()
  • else :
  • flag[7]=1
  • self.__ent=Tkinter.Entry(self.group6.interior())
  • self.__ent.grid(row = 2, column = 1)
  • self.__ent.insert('0','Tk')
  • self.__lab=Tkinter.Label(self.group6.interior(),text='Titre :')
  • self.__lab.grid(row = 2, column = 0)
  • self.notebook.setnaturalsize()
  • def labb (self):
  • global flag
  • if flag[8]:
  • self.ae.destroy()
  • self.ae2.destroy()
  • flag[8]=0
  • else :
  • flag[8]=1
  • self.ae=Tkinter.Entry(self.group5.interior())
  • self.ae.insert('0','50')
  • self.ae.grid(row = 1, column = 1)
  • self.ae2=Tkinter.Label(self.group5.interior(),text='Taille :')
  • self.ae2.grid(row = 1, column = 0)
  • def but1 (self):
  • global flag
  • if flag[4]:
  • flag[4]=0
  • else :
  • flag[4]=1
  • def aegis2 (self):
  • global flag
  • if flag[9]:
  • flag[9]=0
  • else :
  • flag[9]=1
  • def but2 (self,oo):
  • global flag
  • if oo == 'Relief sortant' :
  • flag[5][0]=Tkinter.RAISED
  • elif oo == 'Relief rentrant' :
  • flag[5][0]=Tkinter.SUNKEN
  • elif oo == 'Pas de relief' :
  • flag[5][0]=Tkinter.FLAT
  • elif oo == 'Crête' :
  • flag[5][0]=Tkinter.RIDGE
  • elif oo == 'Sillon' :
  • flag[5][0]=Tkinter.GROOVE
  • elif oo == 'Bordure' :
  • flag[5][0]=Tkinter.SOLID
  • def but3 (self,oo):
  • global flag
  • if oo == 'Relief sortant' :
  • flag[5][1]=Tkinter.RAISED
  • elif oo == 'Relief rentrant' :
  • flag[5][1]=Tkinter.SUNKEN
  • elif oo == 'Pas de relief' :
  • flag[5][1]=Tkinter.FLAT
  • elif oo == 'Crête' :
  • flag[5][1]=Tkinter.RIDGE
  • elif oo == 'Sillon' :
  • flag[5][1]=Tkinter.GROOVE
  • elif oo == 'Bordure' :
  • flag[5][1]=Tkinter.SOLID
  • def but4 (self,oo):
  • global flag
  • if oo == 'Relief sortant' :
  • flag[5][2]=Tkinter.RAISED
  • elif oo == 'Relief rentrant' :
  • flag[5][2]=Tkinter.SUNKEN
  • elif oo == 'Pas de relief' :
  • flag[5][2]=Tkinter.FLAT
  • elif oo == 'Crête' :
  • flag[5][2]=Tkinter.RIDGE
  • elif oo == 'Sillon' :
  • flag[5][2]=Tkinter.GROOVE
  • elif oo == 'Bordure' :
  • flag[5][2]=Tkinter.SOLID
  • def but5 (self,oo):
  • global flag
  • if oo == 'Relief sortant' :
  • flag[5][3]=Tkinter.RAISED
  • elif oo == 'Relief rentrant' :
  • flag[5][3]=Tkinter.SUNKEN
  • elif oo == 'Pas de relief' :
  • flag[5][3]=Tkinter.FLAT
  • elif oo == 'Crête' :
  • flag[5][3]=Tkinter.RIDGE
  • elif oo == 'Sillon' :
  • flag[5][3]=Tkinter.GROOVE
  • elif oo == 'Bordure' :
  • flag[5][3]=Tkinter.SOLID
  • def but5 (self,oo):
  • global flag
  • if oo == 'Relief sortant' :
  • flag[5][4]=Tkinter.RAISED
  • elif oo == 'Relief rentrant' :
  • flag[5][4]=Tkinter.SUNKEN
  • elif oo == 'Pas de relief' :
  • flag[5][4]=Tkinter.FLAT
  • elif oo == 'Crête' :
  • flag[5][4]=Tkinter.RIDGE
  • elif oo == 'Sillon' :
  • flag[5][4]=Tkinter.GROOVE
  • elif oo == 'Bordure' :
  • flag[5][4]=Tkinter.SOLID
  • def lab1 (self):
  • global flag
  • if flag[1]:
  • flag[1]=0
  • self.lab1.destroy()
  • self.ent1.destroy()
  • self.lab1_.destroy()
  • self.ent1_.destroy()
  • self.lab1__.destroy()
  • self.ent1__.destroy()
  • self.dropdown1.destroy()
  • flag[5][1]=Tkinter.FLAT
  • self.notebook.setnaturalsize()
  • else :
  • flag[1]=1
  • self.ent1=Tkinter.Entry(self.group2_1.interior())
  • self.ent1.grid(row = 1, column = 1)
  • self.lab1=Tkinter.Label(self.group2_1.interior(),text='Texte sur le label :')
  • self.lab1.grid(row = 1, column = 0)
  • self.ent1_=Tkinter.Entry(self.group2_1.interior())
  • self.ent1_.grid(row = 2, column = 1)
  • self.lab1_=Tkinter.Label(self.group2_1.interior(),text='Couleur de fond :')
  • self.lab1_.grid(row = 2, column = 0)
  • self.ent1__=Tkinter.Entry(self.group2_1.interior())
  • self.ent1__.grid(row = 3, column = 1)
  • self.lab1__=Tkinter.Label(self.group2_1.interior(),text='couleur du texte :')
  • self.lab1__.grid(row = 3, column = 0)
  • self.ent1__.insert ('0','grey0')
  • self.ent1_.insert ('0','grey100')
  • self.dropdown1 = Pmw.ComboBox(self.group2_1.interior(),
  • label_text = 'Relief : ',
  • labelpos = 'nw',
  • selectioncommand = self.but3,
  • scrolledlist_items = colours,
  • )
  • self.dropdown1.grid(row = 5, column = 0,columnspan=2)
  • self.notebook.setnaturalsize()
  • def lab2 (self):
  • global flag
  • if flag[2]:
  • flag[2]=0
  • self.lab2.destroy()
  • self.ent2.destroy()
  • self.lab2_.destroy()
  • self.ent2_.destroy()
  • self.lab2__.destroy()
  • self.ent2__.destroy()
  • self.dropdown2.destroy()
  • flag[5][2]=Tkinter.FLAT
  • self.notebook.setnaturalsize()
  • else :
  • flag[2]=1
  • self.ent2=Tkinter.Entry(self.group2_2.interior())
  • self.ent2.grid(row = 1, column = 1)
  • self.lab2=Tkinter.Label(self.group2_2.interior(),text='Texte sur le label :')
  • self.lab2.grid(row = 1, column = 0)
  • self.ent2_=Tkinter.Entry(self.group2_2.interior())
  • self.ent2_.grid(row = 2, column = 1)
  • self.lab2_=Tkinter.Label(self.group2_2.interior(),text='Couleur de fond :')
  • self.lab2_.grid(row = 2, column = 0)
  • self.ent2__=Tkinter.Entry(self.group2_2.interior())
  • self.ent2__.grid(row = 3, column = 1)
  • self.lab2__=Tkinter.Label(self.group2_2.interior(),text='couleur du texte :')
  • self.lab2__.grid(row = 3, column = 0)
  • self.ent2__.insert ('0','grey0')
  • self.ent2_.insert ('0','grey100')
  • self.dropdown2 = Pmw.ComboBox(self.group2_2.interior(),
  • label_text = 'Relief : ',
  • labelpos = 'nw',
  • selectioncommand = self.but4,
  • scrolledlist_items = colours,
  • )
  • self.dropdown2.grid(row = 5, column = 0,columnspan=2)
  • self.notebook.setnaturalsize()
  • def lab3 (self):
  • global flag
  • if flag[3]:
  • flag[3]=0
  • self.lab3.destroy()
  • self.ent3.destroy()
  • self.lab3_.destroy()
  • self.ent3_.destroy()
  • self.lab3__.destroy()
  • self.ent3__.destroy()
  • self.dropdown3.destroy()
  • flag[5][3]=Tkinter.FLAT
  • self.notebook.setnaturalsize()
  • else :
  • flag[3]=1
  • self.ent3=Tkinter.Entry(self.group2_3.interior())
  • self.ent3.grid(row = 1, column = 1)
  • self.lab3=Tkinter.Label(self.group2_3.interior(),text='Texte sur le label :')
  • self.lab3.grid(row = 1, column = 0)
  • self.ent3_=Tkinter.Entry(self.group2_3.interior())
  • self.ent3_.grid(row = 2, column = 1)
  • self.lab3_=Tkinter.Label(self.group2_3.interior(),text='Couleur de fond :')
  • self.lab3_.grid(row = 2, column = 0)
  • self.ent3__=Tkinter.Entry(self.group2_3.interior())
  • self.ent3__.grid(row = 3, column = 1)
  • self.lab3__=Tkinter.Label(self.group2_3.interior(),text='couleur du texte :')
  • self.lab3__.grid(row = 3, column = 0)
  • self.ent3__.insert ('0','grey0')
  • self.ent3_.insert ('0','grey100')
  • self.dropdown3 = Pmw.ComboBox(self.group2_3.interior(),
  • label_text = 'Relief : ',
  • labelpos = 'nw',
  • selectioncommand = self.but5,
  • scrolledlist_items = colours,
  • )
  • self.dropdown3.grid(row = 5, column = 0,columnspan=2)
  • self.notebook.setnaturalsize()
  • ######################################################################
  • if __name__ == '__main__':
  • root = Tkinter.Tk()
  • Pmw.initialise(root)
  • widget = Demo(root)
  • root.mainloop()
# -*- coding: cp1252 -*-
import Tkinter
import Pmw
from tkMessageBox import *
colours = ('Relief sortant', 'Relief rentrant', 'Pas de relief', 'Crête','Sillon', 'Bordure')
flag=[0,0,0,0,0,[Tkinter.RAISED,Tkinter.FLAT,Tkinter.FLAT,Tkinter.FLAT,Tkinter.FLAT],0,0,0,0]
class Demo:
    def __init__(self, parent):
        parent.bind('<Control-s>',self.cf)
        self.parent=parent
	# Create and pack the NoteBook.
        self.notebook = Pmw.NoteBook(parent)
        self.notebook.pack( expand = 1, padx = 10, pady = 10)

        # Add the "Appearance" page to the notebook.
        self.page4 = self.notebook.add(' Apparence ')
        self.notebook.tab(' Apparence ').focus_set()
        self.page = self.notebook.add(' Objet ')
        self.notebook.tab(' Objet ').focus_set()
        self.page2 = self.notebook.add(' les + ')
        self.notebook.tab(' les + ').focus_set()
        self.page3 = self.notebook.add(' creer ')
        self.notebook.tab(' creer ').focus_set()


        # Create the "Toolbar" contents of the page.
        self.group4 = Pmw.Group(self.page4, tag_text = 'Couleur')
        self.group4.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
        self.group5 = Pmw.Group(self.page, tag_text = 'Canvas')
        self.group5.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
        self.group2 = Pmw.Group(self.page, tag_text = 'Label')
        self.group2.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
        self.group6 = Pmw.Group(self.page4, tag_text = 'Titre')
        self.group6.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
        self.group65 = Pmw.Group(self.page4, tag_text = 'Bare de tache')
        self.group65.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
        self.group2_1 = Pmw.Group(self.group2.interior(), tag_text = 'Label-1')
        self.group2_1.grid( row = 0, column = 0,padx = 10, pady =10)
        self.group2_2 = Pmw.Group(self.group2.interior(), tag_text = 'Label-2')
        self.group2_2.grid( row = 0, column = 1,padx = 10, pady =10)
        self.group2_3 = Pmw.Group(self.group2.interior(), tag_text = 'Label-3')
        self.group2_3.grid( row = 1, column = 0,padx = 10, pady =10)
        self.b5=Tkinter.Button(self.page3,text='Creer le fichier',command=self.cf)
        self.b5.grid(row = 1, column = 0,columnspan=2 ,padx = 50, pady = 40)
        self.group3 = Pmw.Group(self.page, tag_text = 'Bouton')
        self.group3.pack(fill = 'both', expand = 1, padx = 20, pady = 20)
        self.group = Pmw.Group(self.group3.interior(), tag_text = 'Bouton quiter')
        self.group.grid(row = 0, column = 0, padx = 10, pady = 10)
        self.group0 = Pmw.Group(self.page2, tag_text = 'Importation en +')
        self.group0.pack(padx = 10, pady = 10)
        self.group01 = Pmw.Group(self.page2, tag_text = 'definition en +')
        self.group01.pack(padx = 10, pady = 10)
        self.group02 = Pmw.Group(self.page2, tag_text = 'widjet en +')
        self.group02.pack(padx = 10, pady = 10)
        self.b1 = Tkinter.Checkbutton(self.group.interior(), text = 'Bouton quiter',command=self.but)
        self.b1.grid(row = 0, column = 0)
        self.b6 = Tkinter.Checkbutton(self.group4.interior(), text = 'couleur/relief',command=self.but6)
        self.b6.grid(row = 0, column = 0)
        self.b7 = Tkinter.Checkbutton(self.group6.interior(), text = 'Titre',command=self.but7)
        self.b7.grid(row = 1, column = 0)
        self.Ent = Tkinter.Entry(self.page3)
        self.Ent.grid(row = 0, column = 1)
        self.Ent.insert('0','1.py')
        self.Lab = Tkinter.Label(self.page3,text='Localisation :')
        self.Lab.grid(row = 0, column = 0)
        self.b2 = Tkinter.Checkbutton(self.group2_1.interior(), text = 'Label-1',command=self.lab1)
        self.b2.grid(row = 0, column = 0)
        self.b3 = Tkinter.Checkbutton(self.group2_2.interior(), text = 'Label-2',command=self.lab2)
        self.b3.grid(row = 0, column = 0)
        self.bb = Tkinter.Checkbutton(self.group5.interior(), text = 'Fenetre pour dessiner',command=self.labb)
        self.bb.grid(row = 0, column = 0)
        self.b4 = Tkinter.Checkbutton(self.group2_3.interior(), text = 'Label-3',command=self.lab3)
        self.b4.grid(row = 0, column = 0)
        self.b45 = Tkinter.Checkbutton(self.group65.interior(), text = 'Barre de tache',command=self.aegis2)
        self.b45.grid(row = 0, column = 0)
        self.txt=Pmw.ScrolledText(self.group0.interior(),borderframe = 1,
		usehullsize = 1,
		hull_width =200,hull_height =100,
		text_padx = 10,text_pady = 10)
        self.txt.pack()
        self.txt1=Pmw.ScrolledText(self.group01.interior(),borderframe = 1,
		usehullsize = 1,
		hull_width =200,hull_height =100,
		text_padx = 10,text_pady = 10)
        self.txt1.pack()
        self.txt2=Pmw.ScrolledText(self.group02.interior(),borderframe = 1,
		usehullsize = 1,
		hull_width =200,hull_height =100,
		text_padx = 10,text_pady = 10)
        self.txt2.pack()
        self.notebook.setnaturalsize()

    def cf(self,event=None) :
        if flag[1] :
            a1 = '\nLabel(text="%s",bg="%s",fg="%s",relief="%s").pack()'%(self.ent1.get(),self.ent1_.get(),self.ent1__.get(),flag[5][1])
        else :
            a1=''
        if flag[2] :
            a2 = '\nLabel(text="%s",bg="%s",fg="%s",relief="%s").pack()'%(self.ent2.get(),self.ent2_.get(),self.ent2__.get(),flag[5][2])
        else :
            a2=''
        if flag[3] :
            a3 = '\nLabel(text="%s",bg="%s",fg="%s",relief="%s").pack()'%(self.ent3.get(),self.ent3_.get(),self.ent3__.get(),flag[5][3])
        else :
            a3=''
        if flag[4]:
            a35='disable'
        else :
            a35='normal'
        if flag[0] :
            a4 = '\nButton(text="%s",bg="%s",fg="%s",command=exit,stat="%s",relief="%s").pack()'%(self.ent.get(),self.ent_.get(),self.ent__.get(),a35,flag[5][0])
        else :
            a4=''
        if flag[6] :
            a5 = '\nroot.configure(bg="%s",relief="%s",bd=%s)'%(self._ent.get(),flag[5][4],self._ent_.get())
        else :
            a5=''
        if flag[7] :
            a6 = '\nroot.title("%s")'%(self.__ent.get())
        else :
            a6='\nroot.title("Tk")'
        if flag[8] :
            a7 ="""
def bit (event) :
    can.create_line(event.x,event.y,event.x+1,event.y+1,fill='grey100')"""
            a8= """can = Canvas(bg='grey0',height=%s,width=%s)
can.pack()
can.bind('<Motion>',bit)"""%(self.ae.get(),self.ae.get())
        else :
            a8=a7=''
        if flag[9] :
            a9='\nroot.overrideredirect(TRUE)'
        else :
            a9=''
        self.main="""####Importation####
from Tkinter import *
%s
from sys import exit
####/Importation####
####Fonctions####
%s
%s
####/Fonctions####
####Widjet####
root=Tk()%s%s%s%s%s%s%s
%s
%s
root.mainloop()
####/Widjet####"""%(self.txt.get(),a7,self.txt1.get(),a1,a2,a9,a3,a4,a5,a6,a8,self.txt2.get())
        open(self.Ent.get(),'w+').write(self.main)
        self.parent.bell()
    def but (self):
        global flag
        if flag[0]:
            flag[0]=0
            self.lab.destroy()
            self.ent.destroy()
            self.lab_.destroy()
            self.ent_.destroy()
            self.lab__.destroy()
            self.ent__.destroy()
            self.b5.destroy()
            self.dropdown.destroy()
            flag[5][0]=Tkinter.RAISED
            self.notebook.setnaturalsize()
        else :
            flag[0]=1
            self.ent=Tkinter.Entry(self.group.interior())
            self.ent.grid(row = 1, column = 1)
            self.lab=Tkinter.Label(self.group.interior(),text='Texte sur le bouton :')
            self.lab.grid(row = 1, column = 0)
            self.ent_=Tkinter.Entry(self.group.interior())
            self.ent_.grid(row = 2, column = 1)
            self.lab_=Tkinter.Label(self.group.interior(),text='Couleur de fond :')
            self.lab_.grid(row = 2, column = 0)
            self.ent__=Tkinter.Entry(self.group.interior())
            self.ent__.grid(row = 3, column = 1)
            self.lab__=Tkinter.Label(self.group.interior(),text='couleur du texte :')
            self.lab__.grid(row = 3, column = 0)
            self.ent__.insert ('0','grey0')
            self.ent_.insert ('0','grey100')
            self.b5 = Tkinter.Checkbutton(self.group.interior(), text = '<= Disable',command=self.but1)
            self.b5.grid(row = 4, column = 0,columnspan=2)
            self.dropdown = Pmw.ComboBox(self.group.interior(),
                label_text = 'Relief : ',
	        labelpos = 'nw',
                selectioncommand = self.but2,
		scrolledlist_items = colours,
            )
            self.dropdown.grid(row = 5, column = 0,columnspan=2)
            self.notebook.setnaturalsize()
    def but6 (self):
        global flag
        if flag[6]:
            flag[6]=0
            self._ent.destroy()
            self._lab.destroy()
            self._lab_.destroy()
            self._ent_.destroy()
            self.dropdown4.destroy()
            self.notebook.setnaturalsize()
            flag[5][4]=Tkinter.FLAT
        else :
            flag[6]=1
            self._ent=Tkinter.Entry(self.group4.interior())
            self._ent.grid(row = 1, column = 1)
            self._lab=Tkinter.Label(self.group4.interior(),text='couleur de la page :')
            self._lab.grid(row = 1, column = 0)
            self._ent.insert('0','grey')
            self._ent_=Tkinter.Entry(self.group4.interior())
            self._ent_.grid(row = 3, column = 1)
            self._lab_=Tkinter.Label(self.group4.interior(),text='taille des relief :')
            self._lab_.grid(row = 3, column = 0)
            self._ent_.insert('0','3')
            self.dropdown4 = Pmw.ComboBox(self.group4.interior(),
                label_text = 'Relief : ',
	        labelpos = 'nw',
                selectioncommand = self.but5,
		scrolledlist_items = colours,
            )
            self.dropdown4.grid(row = 2, column = 0,columnspan=2)
            self.notebook.setnaturalsize()
    def but7 (self):
        global flag
        if flag[7]:
            flag[7]=0
            self.__ent.destroy()
            self.__lab.destroy()
            self.notebook.setnaturalsize()
        else :
            flag[7]=1
            self.__ent=Tkinter.Entry(self.group6.interior())
            self.__ent.grid(row = 2, column = 1)
            self.__ent.insert('0','Tk')
            self.__lab=Tkinter.Label(self.group6.interior(),text='Titre :')
            self.__lab.grid(row = 2, column = 0)
            self.notebook.setnaturalsize()
    def labb (self):
        global flag
        if flag[8]:
            self.ae.destroy()
            self.ae2.destroy()
            flag[8]=0
        else :
            flag[8]=1
            self.ae=Tkinter.Entry(self.group5.interior())
            self.ae.insert('0','50')
            self.ae.grid(row = 1, column = 1)
            self.ae2=Tkinter.Label(self.group5.interior(),text='Taille :')
            self.ae2.grid(row = 1, column = 0)
    def but1 (self):
        global flag
        if flag[4]:
            flag[4]=0
        else :
            flag[4]=1
    def aegis2 (self):
        global flag
        if flag[9]:
            flag[9]=0
        else :
            flag[9]=1
    def but2 (self,oo):
        global flag
        if oo == 'Relief sortant' :
            flag[5][0]=Tkinter.RAISED
        elif oo == 'Relief rentrant' :
            flag[5][0]=Tkinter.SUNKEN
        elif oo == 'Pas de relief' :
            flag[5][0]=Tkinter.FLAT
        elif oo == 'Crête' :
            flag[5][0]=Tkinter.RIDGE
        elif oo == 'Sillon' :
            flag[5][0]=Tkinter.GROOVE
        elif oo == 'Bordure' :
            flag[5][0]=Tkinter.SOLID
    def but3 (self,oo):
        global flag
        if oo == 'Relief sortant' :
            flag[5][1]=Tkinter.RAISED
        elif oo == 'Relief rentrant' :
            flag[5][1]=Tkinter.SUNKEN
        elif oo == 'Pas de relief' :
            flag[5][1]=Tkinter.FLAT
        elif oo == 'Crête' :
            flag[5][1]=Tkinter.RIDGE
        elif oo == 'Sillon' :
            flag[5][1]=Tkinter.GROOVE
        elif oo == 'Bordure' :
            flag[5][1]=Tkinter.SOLID
            
    def but4 (self,oo):
        global flag
        if oo == 'Relief sortant' :
            flag[5][2]=Tkinter.RAISED
        elif oo == 'Relief rentrant' :
            flag[5][2]=Tkinter.SUNKEN
        elif oo == 'Pas de relief' :
            flag[5][2]=Tkinter.FLAT
        elif oo == 'Crête' :
            flag[5][2]=Tkinter.RIDGE
        elif oo == 'Sillon' :
            flag[5][2]=Tkinter.GROOVE
        elif oo == 'Bordure' :
            flag[5][2]=Tkinter.SOLID
            
    def but5 (self,oo):
        global flag
        if oo == 'Relief sortant' :
            flag[5][3]=Tkinter.RAISED
        elif oo == 'Relief rentrant' :
            flag[5][3]=Tkinter.SUNKEN
        elif oo == 'Pas de relief' :
            flag[5][3]=Tkinter.FLAT
        elif oo == 'Crête' :
            flag[5][3]=Tkinter.RIDGE
        elif oo == 'Sillon' :
            flag[5][3]=Tkinter.GROOVE
        elif oo == 'Bordure' :
            flag[5][3]=Tkinter.SOLID
    def but5 (self,oo):
        global flag
        if oo == 'Relief sortant' :
            flag[5][4]=Tkinter.RAISED
        elif oo == 'Relief rentrant' :
            flag[5][4]=Tkinter.SUNKEN
        elif oo == 'Pas de relief' :
            flag[5][4]=Tkinter.FLAT
        elif oo == 'Crête' :
            flag[5][4]=Tkinter.RIDGE
        elif oo == 'Sillon' :
            flag[5][4]=Tkinter.GROOVE
        elif oo == 'Bordure' :
            flag[5][4]=Tkinter.SOLID
    def lab1 (self):
        global flag
        if flag[1]:
            flag[1]=0
            self.lab1.destroy()
            self.ent1.destroy()
            self.lab1_.destroy()
            self.ent1_.destroy()
            self.lab1__.destroy()
            self.ent1__.destroy()
            self.dropdown1.destroy()
            flag[5][1]=Tkinter.FLAT
            self.notebook.setnaturalsize()
        else :
            flag[1]=1
            self.ent1=Tkinter.Entry(self.group2_1.interior())
            self.ent1.grid(row = 1, column = 1)
            self.lab1=Tkinter.Label(self.group2_1.interior(),text='Texte sur le label :')
            self.lab1.grid(row = 1, column = 0)
            self.ent1_=Tkinter.Entry(self.group2_1.interior())
            self.ent1_.grid(row = 2, column = 1)
            self.lab1_=Tkinter.Label(self.group2_1.interior(),text='Couleur de fond :')
            self.lab1_.grid(row = 2, column = 0)
            self.ent1__=Tkinter.Entry(self.group2_1.interior())
            self.ent1__.grid(row = 3, column = 1)
            self.lab1__=Tkinter.Label(self.group2_1.interior(),text='couleur du texte :')
            self.lab1__.grid(row = 3, column = 0)
            self.ent1__.insert ('0','grey0')
            self.ent1_.insert ('0','grey100')
            self.dropdown1 = Pmw.ComboBox(self.group2_1.interior(),
                label_text = 'Relief : ',
	        labelpos = 'nw',
                selectioncommand = self.but3,
		scrolledlist_items = colours,
            )
            self.dropdown1.grid(row = 5, column = 0,columnspan=2)
            self.notebook.setnaturalsize()
            
    def lab2 (self):
        global flag
        if flag[2]:
            flag[2]=0
            self.lab2.destroy()
            self.ent2.destroy()
            self.lab2_.destroy()
            self.ent2_.destroy()
            self.lab2__.destroy()
            self.ent2__.destroy()
            self.dropdown2.destroy()
            flag[5][2]=Tkinter.FLAT
            self.notebook.setnaturalsize()
        else :
            flag[2]=1
            self.ent2=Tkinter.Entry(self.group2_2.interior())
            self.ent2.grid(row = 1, column = 1)
            self.lab2=Tkinter.Label(self.group2_2.interior(),text='Texte sur le label :')
            self.lab2.grid(row = 1, column = 0)
            self.ent2_=Tkinter.Entry(self.group2_2.interior())
            self.ent2_.grid(row = 2, column = 1)
            self.lab2_=Tkinter.Label(self.group2_2.interior(),text='Couleur de fond :')
            self.lab2_.grid(row = 2, column = 0)
            self.ent2__=Tkinter.Entry(self.group2_2.interior())
            self.ent2__.grid(row = 3, column = 1)
            self.lab2__=Tkinter.Label(self.group2_2.interior(),text='couleur du texte :')
            self.lab2__.grid(row = 3, column = 0)
            self.ent2__.insert ('0','grey0')
            self.ent2_.insert ('0','grey100')
            self.dropdown2 = Pmw.ComboBox(self.group2_2.interior(),
                label_text = 'Relief : ',
	        labelpos = 'nw',
                selectioncommand = self.but4,
		scrolledlist_items = colours,
            )
            self.dropdown2.grid(row = 5, column = 0,columnspan=2)
            self.notebook.setnaturalsize()
            
    def lab3 (self):
        global flag
        if flag[3]:
            flag[3]=0
            self.lab3.destroy()
            self.ent3.destroy()
            self.lab3_.destroy()
            self.ent3_.destroy()
            self.lab3__.destroy()
            self.ent3__.destroy()
            self.dropdown3.destroy()
            flag[5][3]=Tkinter.FLAT
            self.notebook.setnaturalsize()
        else :
            flag[3]=1
            self.ent3=Tkinter.Entry(self.group2_3.interior())
            self.ent3.grid(row = 1, column = 1)
            self.lab3=Tkinter.Label(self.group2_3.interior(),text='Texte sur le label :')
            self.lab3.grid(row = 1, column = 0)
            self.ent3_=Tkinter.Entry(self.group2_3.interior())
            self.ent3_.grid(row = 2, column = 1)
            self.lab3_=Tkinter.Label(self.group2_3.interior(),text='Couleur de fond :')
            self.lab3_.grid(row = 2, column = 0)
            self.ent3__=Tkinter.Entry(self.group2_3.interior())
            self.ent3__.grid(row = 3, column = 1)
            self.lab3__=Tkinter.Label(self.group2_3.interior(),text='couleur du texte :')
            self.lab3__.grid(row = 3, column = 0)
            self.ent3__.insert ('0','grey0')
            self.ent3_.insert ('0','grey100')
            self.dropdown3 = Pmw.ComboBox(self.group2_3.interior(),
                label_text = 'Relief : ',
	        labelpos = 'nw',
                selectioncommand = self.but5,
		scrolledlist_items = colours,
            )
            self.dropdown3.grid(row = 5, column = 0,columnspan=2)
            self.notebook.setnaturalsize()

######################################################################


if __name__ == '__main__':
    root = Tkinter.Tk()    
    Pmw.initialise(root)
    widget = Demo(root)
    root.mainloop()

Conclusion

/
 

Historique

15 mai 2009 16:32:18 :
/

Commentaires et avis

signaler à un administrateur
Commentaire de xeolin le 10/06/2006 11:41:06

j'oubliait il faut telecharger pmw...

signaler à un administrateur
Commentaire de HCD le 13/06/2006 22:15:36

Mêmes remarques que celles que j'ai faites pour ta précédente source : il manque une présentation dans le script de ce qu'elle permet de faire exactement; il manque aussi des commentaires dans le code pour expliquer les variables, les fonctions et les widgets que tu crées.
Le code est bien fait et fonctionne.
Dans ta présentation, je te cite :
" créer
1 entrer le nom du fichier afin de le créer "

J'ai rentré ceci : C:\Python25\X102.py
mais quand je clique sur le bouton " créer", rien ne se passe ???
A+
HCD
(ortho : "Quitter", "Créer","Essentiel","mettra")

signaler à un administrateur
Commentaire de HCD le 14/06/2006 10:21:44

Nouvelles remarques
En fait quand on clique sur le bouton "créer", on a l'impression que rien ne se passe; mais en réalité, le fichier est bien créé dans Python25.
Quand on ouvre ce fichier, il apparait une erreur de syntaxe : il manque une indentation ligne 125
(devant : can.create_line(event.x,event.y,event.x+1,event.y+1,fill='grey100')
Autre point : le bouton "Quitter" lève une exception et plante le run.
Dernier point : je n'ai pas compris comment utiliser "les +" ??? Que faut-il mettre dans les trois cases ???
Ortho : "Widget"
HCD

signaler à un administrateur
Commentaire de xeolin le 14/06/2006 17:25:07

donc premier commentaires :

j'ai utilisé try :
pour l'ouverture du fichier.
Il ne faut mettre de le nom du fichier (ca me paraissait logique mais bon...)
et pour l'ortho, tu me fais mal au coeur...

donc second commentaires :
les + sont utilisé lorsque tu veut toi même ajouter des widjets..

dans importation on met from -- import *

dans fonction on met
def --(*--) :
   --

et dans widjet on met

Button(command=--,text='--')

etc..

mais biensur t pas obligé (c l'avantage du prog)

de plus pour tes erreur elles ne se produisent pas chez moi...
et quand on appuit sur le bouton 'créer' j'utilise root.bell() qui fait clignoter la fenetre (sous win)

et vla...

et oui mon programme est HORRIBLEMENT mal ecrit...
je n'arrive même pu a me relire..

c a cause de ma methode de fabrication :

on ajoute quelque truc tout les mois ...

bon a++

et pour les jouieurs de guilde wars : mon psedo est 'hunters hacker' et 'hunters killers'

signaler à un administrateur
Commentaire de aera group le 03/02/2007 11:51:59

Bonjours,

C'est un beau petit programme qui vaut bien un 10/10 !

Part contre, je te déconseille d'utiliser "root.bell()" pour dire que ton fichier est créé. En effet cette fonction est surtout créé pour prévenir l'utilisateur qu'un problème est survenu (ce qui n'est pas vraiment le cas ici !). Je te conseille d'utiliser une boite de dialogue pour sauvegarder le script :



from tkFileDialog import asksaveasfile   # Importation de la bibliothèque

#########################


ofi =asksaveasfile(filetypes=[("Fichier Python",".py"),("Tous","*")])
ofi.write(self.main)   # self.main étant le text à inscrire dans le fichier Python (cf. ligne 135)
ofi.close()



Voila, bonne programmation

___________
Aéra Group

signaler à un administrateur
Commentaire de xeolin le 15/05/2009 16:28:59

je vais effectuer cette petite modification...

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Création de raccourci et lancement rapide pour un néophite [ par VickyLabRet ] Ma fille de 6ans allume d&#233;j&#224; mon ordi et triffouille n'importe quoi.Ce qui l'int&#233;resse c'est d'la musique.Je voudrais faire quelque cho Vous feriez comment... ? [ par freeosca ] Bonjour à tous, Pourriez-vous me confirmer que l'exemple qui suit est possible avec ce langage : Exemple : - J'installe une distrib linux sur un pc python + objet COM [ par anis50 ] Bonjour a tous, j'ai un petit probleme, c'est que j'ai un objet COM gener&#233; par VC++ donc son interface (.h), j'ai besoin d'appeler les methodes i interface c++ / python [ par gwenc_hlan ] bonjour, je programme maintenant depuis quelques mois avec python, et je commence à maitriser à peu pres correctement le langage.mais l'autre jour, je Probleme de conception [ par JoeNamat ] Bonjour a vous,Je ne suis pas un tres bon programmeur et j'ai programme une interface graphique en python avec PyGTK. Cette interface graphique interr


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version


HTC Magic

Entre 429€ et 429€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.