Filenames y text box

Iniciado por Erika Vega, 12 Septiembre 2006, 01:34 AM

0 Miembros y 2 Visitantes están viendo este tema.

Erika Vega

COmo hago para que en un textbox despues de abrir un archivo desde un common dialog no se muestre toda la ruta sino solamente la aplicacion que quiero, es decir

Lo que obtengo y no quiero:

C:\Project\app\nog.exe

lo que quiero:

nog.exe

solo quiero que se muestre el nombre del archivo con su extension obviamente mas no toda su ruta, como le hago???

Mr.Chispa


CommonDialog1.ShowOpen
Text1.Text = CommonDialog1.FileTitle

facil, no?

Gorky

Y si no es de un CommonDialog, en general puedes hacerlo con la Api GetFileTitle. Aqui te dejo un ejemplo:

    Dim Buffer As String
    Buffer = String(255, 0)
    GetFileTitle "c:\archivos de programa\test.tst", Buffer, Len(Buffer)
    Buffer = Left$(Buffer, InStr(1, Buffer, Chr$(0)) - 1)
    MsgBox Buffer

Erika Vega

gracias , ahora viene mi interrogante, todo conrrecto con el filetitle, pero si lo que deseo ahora es que aparezca el nombre sin su extension como se hace eso.

perdonen que sea molestosa okis.

Gorky

Para eso juegas un poco con las funciones de manejo de strings:

nombre = Left(nombre, (Len(nombre) - 4))

Erika Vega


Gorky


WarGhost

si pero si la extensión es de mas de 4 caracteres ¿?¿?.

lo mejor es buscar la ultimo "." del fichero y luego borralo de hay para atrás.
¿Qué culpa tengo yo de tener la sangre roja y el corazón a la izquierda?

Erika Vega

pero como hago eso haber explicame mas!!! plis

WarGhost

asi de facil:

Se supone que WarGhost es el nombre de un fichero y su extensión es .War, pues esto lo que hace es buscar el ultimo punto y devuelve el numero de caracteres que hay asta el punto pues luego hacemos un mid y decimos que lea solo hasta el ultimo punto ;).

Dim ruta As String
ruta = "WarGhost.War"
MsgBox Mid(ruta, 1, InStrRev(ruta, ".") - 1)


y así no importa cuantos lo larga que sea la extensión ;).
¿Qué culpa tengo yo de tener la sangre roja y el corazón a la izquierda?