IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tkinter Python Discussion :

ouvrir directement mon fichier dans mon éditeur


Sujet :

Tkinter Python

  1. #1
    Membre confirmé Avatar de timiti29
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 95
    Par défaut ouvrir directement mon fichier dans mon éditeur
    bonjour tout le monde j'ai crée un petit éditeur de texte et je voulais que quand je doubleclic sur un fichier .txt alor il souvre dans mon éditeur de texte pour que je puise l'éditer comment faire ?
    car j'ai fait en sorte que tt les fichier texte s'éxecute avec mon éditeur de texte .py(clic droit ouvrir avec / choisir le programe / j'ai fait parcourir ensuite j'ai selectioner mon .py et j'ai cocher la case a cocher et j'ai fait ok)
    et maintenant quand je lance mon .txt il exécute mon fichier .py mais le fichier n'est pas dans le chant de texte.
    mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    # -*- coding: iso-8859-1 -*-
    #------------------------------IMPORTATION--------------------#
    import Tkinter
    import tkFileDialog as Selector
    from Tkinter import *
    #---------------------------FONTION---------------------------#
    def ouvrir(ev=None):
          #Selection du fichier avec filtre .txt :
          file2=Selector.askopenfilename(filetypes = [("Fichiers Texte","*.txt")])
          fd=open(file2, 'r')
          chaine=fd.read()
          texte.insert(Tkinter.END,chaine)
          fichier_courant = file2
          recherche()
    def sauvegarder(texte):
        #Fenêtre de sauvegarde 
        fichier=Selector.asksaveasfilename(filetypes = [("Fichiers Texte","*.txt")])
        fichier = str(fichier)
        fichiereverse = ""#chaine inversee
        for fichier2 in reversed(fichier):
            fichiereverse += fichier2
        extentionreverse = fichiereverse[:4]
        extention=""
        for extention2 in reversed(extentionreverse):
            extention += extention2
        if extention != ".txt":
            fichier= fichier + ".txt"
        fd2=open(fichier, 'w')
        texte2=texte
        fd2.write(texte2)
        fd2.close()
    def ascenseur():
         scrollbar = Tkinter.Scrollbar(racine)
         scrollbar.pack(side=Tkinter.RIGHT, fill=Tkinter.BOTH)
    def quitter(ev=None):
           racine.destroy()
    def a_propos(ev=None):
          propos=Tkinter.Toplevel()
          propos.geometry("220x150")
          propos.grab_set()
          propos.focus_set()
          #Mise en place du titre:
          propos.title("A propos de Editim")
          #Mise de l'icone en haut a gauche de la fenetre :
          propos.iconbitmap("Editim.ico")
          zoneTexte=Tkinter.Label(propos, text="Version du 4 avril 2009\n\nPar Timothe Pennec en Python 2.4\n\nLogiciel crée pour Windows XP\n\nderniere mise a jpour le 08/05/09\n")
          zoneTexte.pack()
          bouton = Tkinter.Button(propos, text="OK", command=propos.destroy).pack()
     
    #-----------------------------FENETRE-------------------------------#
     
    racine=Tkinter.Tk()
    fichier_courant = "nouveau fichier"
    #Mise en place du titre:
    racine.title("Editim v1.0")
    #Mise de l'icone en haut a gauche de la fenetre :
    racine.iconbitmap("Editim.ico")
     
    #-----------------------------MENU---------------------------------#
     
    #menu Fichier :
     
    # Creation du systeme de menu (variable explicite sysdemenu):
    sysdemenu = Tkinter.Menu(racine)
    # Creation du menu Fichier :
    Fichier = Tkinter.Menu(sysdemenu, tearoff=0)
    #Partie Fichier :
    sysdemenu.add_cascade(label="Fichier", menu=Fichier)
    #Sous partie :
    Fichier.add_command(label="Ouvrir             Ctrl + o", command=ouvrir)
    Fichier.add_separator()#Separateur (bar de separation grise)
    Fichier.add_command(label="Sauvegarder    Ctrl + s", command=lambda: sauvegarder(texte.get(0., Tkinter.END)))
    Fichier.add_separator()#Separateur (bar de separation grise)
    Fichier.add_command(label="Quitter            Ctrl + q", command=quitter)
     
    # Creation du menu ? :
    intero = Tkinter.Menu(sysdemenu, tearoff=0)
    #Partie Fichier :
    sysdemenu.add_cascade(label="?", menu=intero)
    #Sous partie :
    intero.add_command(label="A propos de Editim    F1", command=a_propos)
    #-----------------------------Racourci clavier-----------------------#
     
    Fichier.bind_all('<Control-o>', ouvrir)         #Ctrl + o pour l'ancer l'ouverture du fichier
    Fichier.bind_all('<Control-s>', sauvegarder)#Ctrl + s pour enregistrer
    Fichier.bind_all('<Control-q>', quitter)        #Ctrl + q pour quitter
    intero.bind_all('<F1>', a_propos)                 #F1 l'ancer la fenêtre a_propos
    #-----------------------------------------------------------------------#
     
     
    #On met en place l'ascenseur :
    ascenseur()
    #Prevoit une place pour l'affichage des textes :
    texte=Tkinter.Text(racine)
    texte.pack(side=Tkinter.TOP, expand=True,fill=Tkinter.BOTH)
    #Insertion du menu
    racine.config(menu=sysdemenu)
    if __name__ == "__main__":
          racine.mainloop()
    comment faire ?
    merci de votre aide.
    timiti29
    ps j'utilise python 2.6 et tkinter

  2. #2
    Membre Expert Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Par défaut
    Bonjour,

    Regarde du coté d'un from sys import argv et un truc du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    try:
        if argv[1]:
            un open de arg[1]
    except:
        pass
    @+

  3. #3
    Membre émérite
    Homme Profil pro
    heu...
    Inscrit en
    Octobre 2007
    Messages
    648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : heu...

    Informations forums :
    Inscription : Octobre 2007
    Messages : 648
    Par défaut
    il faut déjà que dans ton code que quand tu lance l'application, qu'elle puisse savoir si il faut qu'elle lance la procédure de chargement d'un fichier ou non.

    Comme l'a dit Pausekawa, il faut utiliser sys.argv.

    Ensuite il faut pouvoir associer l'extensiont txt avec ton script, et les seules solutions sont :
    ¤ utiliser py2exe pour générer un exe
    ¤ créer un simple batch

    dans le répertoire où se trouve ton éditeur, crée un nouveau fichier texte, puis ouvre le et tape
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    python MonEditeur.py $1
    Enregisrtes, puis renomme ton fichier : "CeQueTuVeux.bat"

    depuis l'explorateur vas dans le menu Outils > Options des dossiers > type de fichiers > trouve ton extension > modifier > parcourir... > selectionnes ton fichier .bat

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ouvrir un fichier dans mon application Eclipse RCP
    Par romain31770 dans le forum Eclipse Platform
    Réponses: 8
    Dernier message: 29/04/2011, 14h19
  2. Réponses: 7
    Dernier message: 25/01/2006, 22h37
  3. lecture d'éléments dans mon fichier
    Par gillou4 dans le forum C
    Réponses: 9
    Dernier message: 23/10/2005, 17h19
  4. Saut de ligne dans mon fichier?
    Par cchampion2fr dans le forum Access
    Réponses: 1
    Dernier message: 14/09/2005, 17h22
  5. __declspec(dllexport) dans mon fichier header mais...?
    Par Jasmine dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 03/03/2004, 19h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo