Una Ayudita Print Para Textarea Es Posible?


Objetivo: Una Ayudita Print Para Textarea Es Posible?
Estoy haciendo un programa que me toma un resutlado de un comando y lo retorna pero ahora tengo una dua y es que :


' gambas class file

'Variable = sai button 1 function
'shell option command cat button function
'Finder Kernel with curl command

Public Sub TextArea1_KeyPress()



End

Public Sub Button1_Click()
Dim sai As String
Shell "cat /etc/*-release" To sai
Print sai To TextArea1.Text ' esto esta mal da error

End

Public Sub Button2_Click()



End

Public Sub ScrollView1_MouseDown()



End



Public Sub MessageView1_MouseDown()



End



Si le hago la simple alteracion de usar en esta seccion del código asi ya me funciona →

Public Sub Button1_Click()
Dim sai As String
Shell "cat /etc/*-release" To sai
Shell "cat /etc/*-release" To TextArea1.Text

End


Pero lo que yo querria saber es si es posible guardar la salida del comando en esa variable "sai" y despues imprimirla en un textarea o otro objecto .

última edición por portaro el Miercoles, 29 Noviembre 2017, 18:52; editado 1 vez
Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
portaro escribió: [Ver mensaje]


Public Sub Button1_Click()
Dim sai As String
Shell "cat /etc/*-release" To sai
Print sai To TextArea1.Text ' esto esta mal da error


"Print" es como "Write", es decir para escribir datos en un fichero, en un stream.

Tienes que utilizar estas lineas:
Shell "cat /etc/*-release" To sai

TextArea1.Text = sai

última edición por vuott el Miercoles, 29 Noviembre 2017, 20:29; editado 4 veces
Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
...y no usando "Shell":

Public Sub Button1_Click()

Dim ru, s As String

ru = "/etc"

For Each s In Dir(ru, "*-release", gb.File)
TextArea1.Text &= File.Load(ru &/ s)
Next

End

Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
vuott escribió: [Ver mensaje]
portaro escribió: [Ver mensaje]


Public Sub Button1_Click()
Dim sai As String
Shell "cat /etc/*-release" To sai
Print sai To TextArea1.Text ' esto esta mal da error


"Print" es como "Write", es decir para escribir datos en un fichero, en un stream.

Tienes que utilizar estas lineas:
Shell "cat /etc/*-release" To sai

TextArea1.Text = sai


Esto lo entiendo vuott o sea hago corresponder la variable al textarea (control objecto ) y lo admitirá , estaba yo errando la sintaxis ya que no la domino aún.

Pero el método siguiente aunque lo entiendo es mucho más completo y no llego a entender la linea en los conceptos
gb.File y File.Load(ru &/ s)


vuott escribió: [Ver mensaje]
...y no usando "Shell":

Public Sub Button1_Click()

Dim ru, s As String

ru = "/etc"

For Each s In Dir(ru, "*-release", gb.File)
TextArea1.Text &= File.Load(ru &/ s)
Next

End


vuott eres un crack en gambas yo como aprendiz me quedo con algunos nodos cerebrales con algunos códigos tuyos son muy avanzados en conceptos de lenguaje que yo aún no tengo.

Un saludo amigo, muchas gracias por responder y te vuelvo a ver aqui o en el foro Gambas.it que tb lo visito a veces.

Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
Portaro:

Citar:
gb.file

Hay algunas Constantes que tiene definida por defecto gambas ( http://gambaswiki.org/wiki/comp/gb/gb )
gb.file : indica a la orden Dir, que son los ficheros los que tiene que listar
gb.directory: indica a la orden Dir, que son los directorios los que tiene que listar

Son valores integer ( http://gambaswiki.org/wiki/comp/gb/gb/directory , http://gambaswiki.org/wiki/comp/gb/gb/file) y se usan porque es mas fácil recordar el nombre "gb.file" que el valor (que es 1) y además queda más legible lo que queremos hacer.

Citar:
File.load(ru &/ s)

file.load(ruta): Lee fichero de texto indicado en la ruta [ http://gambaswiki.org/wiki/comp/gb/file/load?nh ]
"ru" es una cadena cuyo valor es "/etc"
&/ s: le añade a la variable "ru" la "/" (si le hace falta) y la cadena "s" (que viene definida en el bucle For Each)

Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
jsbsan escribió: [Ver mensaje]
Portaro:

Citar:
gb.file

Hay algunas Constantes que tiene definida por defecto gambas ( http://gambaswiki.org/wiki/comp/gb/gb )
gb.file : indica a la orden Dir, que son los ficheros los que tiene que listar
gb.directory: indica a la orden Dir, que son los directorios los que tiene que listar

Son valores integer ( http://gambaswiki.org/wiki/comp/gb/gb/directory , http://gambaswiki.org/wiki/comp/gb/gb/file) y se usan porque es mas fácil recordar el nombre "gb.file" que el valor (que es 1) y además queda más legible lo que queremos hacer.

Citar:
File.load(ru &/ s)

file.load(ruta): Lee fichero de texto indicado en la ruta [ http://gambaswiki.org/wiki/comp/gb/file/load?nh ]
"ru" es una cadena cuyo valor es "/etc"
&/ s: le añade a la variable "ru" la "/" (si le hace falta) y la cadena "s" (que viene definida en el bucle For Each)


Gracias por aclararme destripando el codigo especialmente los gb que veo que son clases ya con funciones preparadas .

Menudos maestros vuott y jsbsan

Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
Hermano latino, portaro, creo que tendrías estudiar un poquito la función Dir ! devil

Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
vuott escribió: [Ver mensaje]
Hermano latino, portaro, creo que tendrías estudiar un poquito la función Dir ! devil


Si lo reviso aqui → http://gambaswiki.org/wiki/lang/dir en Linux hay un comando dir de Directory .

Gracias por comentarmelo asi aprendo a entender más sobre las Wikis de gambas que a veces no logro entender bien ya que agunos conceptos no los domino mucho.

Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
" Print Para Textarea Es Posible? "

Bueno, ya que "Print" sirve para escribir datos en un fichero, en un stream, teoricamente es posible.
Hace falta identificar la dirección de la área de memoria dónde el objeto "TextArea" almaceza los datos textuales.

Perfil MP  
Objetivo: Re: Una Ayudita Print Para Textarea Es Posible?
portaro escribió: [Ver mensaje]
...es si es posible guardar la salida del comando en esa variable "sai" y despues imprimirla en un textarea o otro objecto .

Si es posible.
Te dejo un fragmento de código de una función (en la que me ayudo Vuott también)
strDistro = File.Load("/etc/issue")

Como ves aquí se extrae un testo que esta en un archivo, en este caso "/etc/issue" y luego se guarda en una variable strDistro.
Luego ese texto lo puedes asignar a cualquier cosa que soporte strings es decir podria ser TuTextArea.Text.
Otra cosa interesante es que según donde y como declares strDistro esta variable sra "visible" desde todo el modulo o clase (según sea el caso), dentro de la función, método o desde fuera.

Pra que se vea desde todo el programa
Public strDistro as string
Para que se vea solo dentro del método
Dim strDistro as string
Hay mas opciones

Saludos.

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.5065s (PHP: -75% SQL: 175%)
Consultas SQL: 46 - Debug off - GZIP Activado