Código de Python - FileSelection

Imágen de perfil
Val: 666
Bronce
Ha disminuido 1 puesto en Python (en relación al último mes)
Gráfica de Python

FileSelectiongráfica de visualizaciones


Python

Publicado el 10 de Noviembre del 2008 por Xavi (548 códigos)
6.589 visualizaciones desde el 10 de Noviembre del 2008
Ejemplo de utilización de un selector de ficheros (FileSelection) con Python 2.5 y GTK 2.

Versión 1
estrellaestrellaestrellaestrellaestrella(2)

Publicado el 10 de Noviembre del 2008gráfica de visualizaciones de la versión: Versión 1
6.590 visualizaciones desde el 10 de Noviembre del 2008
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

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
#!/usr/bin/env python
# -*- coding: iso-8859-15 -*-
 
#
# pygtk
#
# Ejemplo de utilizacion de un selector de fichero (FileSelection)
# 
# http://www.lawebdelprogramador.com
#
 
import pygtk
# Indicamos que deseamos utilizar la versión 2.0 de gtk
pygtk.require('2.0')
import gtk
import os
 
class X(object):
    def __init__(self):
        # Creamos la ventana. Indicamos que se desea una ventana sometida a las
        # decoraciones y posicionamiento del manejador de ventanas.
        self.window=gtk.Window(gtk.WINDOW_TOPLEVEL)
 
        # Conector para cuando se va a cerrar la ventana
        self.window.connect("destroy", self.destroy, None)
 
        # Establece el grosor del borde de la ventana.
        self.window.set_border_width(10)
 
        # Creamos una caja vertical...
        vbox=gtk.VBox(True)
 
        # Añadimos una etiqueta para mostrar la url del fichero seleccionado
        self.labelUrl=gtk.Label()
        # Indicamos la anchura y altura minima
        self.labelUrl.set_size_request(400,-1)
        self.labelUrl.show()
        vbox.pack_start(self.labelUrl)
 
        # Añadimos una etiqueta para mostrar el nombre del fichero seleccionado
        self.labelFile=gtk.Label()
        # Indicamos la anchura y altura minima
        self.labelFile.set_size_request(400,-1)
        self.labelFile.show()
        vbox.pack_start(self.labelFile)
 
        # Añadimos un boton para seleccionar un fichero
        button=gtk.Button("Selecciona un fichero")
        button.connect("clicked",self.selectFile, None)
        button.show()
        vbox.pack_start(button)
 
        vbox.show()
        self.window.add(vbox)
        self.window.show()
 
    def selectFile(self,widget,data=None):
        self.file=gtk.FileSelection("Selecciona un fichero")
        self.file.ok_button.connect("clicked",self.button_ok)
 
        # Podemos acceder a cualquiera de los controles contenidos en su interior
        # haciendo referencia a:
        #    self.file.dir_list (gtk.TreeView) Lista de directorios
        #    self.file.file_list (gtk.TreeView) lista de ficheros
        #    self.file.selection_entry (gtk.Entry) Entrada de seleccion
        #    self.file.selection_text (gtk.Label) Texto de seleccion
        #    self.file.main_vbox (gtk.VBox) Caja vertical principal
        #    self.file.ok_button (gtk.Button) Boton ok
        #    self.file.cancel_button (gtk.Button) Boton cancelar
        #    self.file.help_button (gtk.Button) Boton ayuda
        #    self.file.history_pulldown (gtk.OptionMenu) Desplegable con el historial de directorios
        #    self.file.history_menu (gtk.Menu) Menu de historia. Parte de "history_pulldown"
        #    self.file.fileop_dialog (gtk.Dialog) Caja de dialog usada para mostrar el gtk.FileSelection
        #    self.file.fileop_entry (gtk.Entry) Entrada de texto
        #    self.file.fileop_file Nombre del fichero
        #    self.file.fileop_c_dir (gtk.Button) Boton para crear nueva carpeta
        self.file.fileop_c_dir.hide()
        #    self.file.fileop_del_file (gtk.Button) Boton para borrar un fichero
        self.file.fileop_del_file.hide()
        #    self.file.fileop_ren_file (gtk.Button) Buton para renombrar un fichero
        #    self.file.button_area (gtk.ButtonBox) Area para los botones fileop_c_dir, fileop_del_file y fileop_ren_file
        #    self.file.action_area (gtk.HBox) Area de accion
 
        # Cuando pulsemos el boton "Cancelar", destruimos la ventana.
        self.file.cancel_button.connect("clicked",lambda w:self.file.destroy())
        # Indicamos que nos muestra la ruta del usuario
        self.file.set_filename("~/")
        self.file.show()
 
    # Cuando se pulsa el boton ok...
    def button_ok(self,widget,data=None):
        # Mostramos la url y el nombre del fichero
        self.labelUrl.set_label(os.path.split(self.file.get_filename())[0])
        self.labelFile.set_label(os.path.split(self.file.get_filename())[1])
        # Cerramos la ventana
        self.file.destroy()
 
    def destroy(self,widget,data=None):
        gtk.main_quit()
 
 
if __name__=="__main__":
    X()
    gtk.main()



Comentarios sobre la versión: Versión 1 (2)

jor
14 de Junio del 2010
estrellaestrellaestrellaestrellaestrella
exelente men hace como 2 horas andaba buscando algo como esto, se agradese mucho que haya pusto todo el codigo solo para correrlo.... la documentacion interna ayuda mucho.

voy a tomar como base tu trabajo para tarea que debo hacer.

gracias
Responder
ISAAC
8 de Abril del 2015
estrellaestrellaestrellaestrellaestrella
Thank's,

Esto sevirá bastante para darle aspecto agradable a mi programa....
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s1728