Programa con problemas al guardar informacion y otros. vb.net

Iniciado por eduardogi, 24 Septiembre 2010, 17:38 PM

0 Miembros y 1 Visitante están viendo este tema.

eduardogi

Ayer me surgio una duda que me puede llevar al garete todo el proyecto porque no se como hacer una cosa.


Intención de la aplicación:

Intento realizar una aplicacion con la cual pongas tu puedas pinchar en una imagen que aparezca dento de un groupbox y que al pinchar ejecute la aplicación que tu con anterioridad hallas definido.


Proceso que llevo realizado:

He creado un groupbox donde dentro de este tengo 6 imagenes con 6 labels (El nombre de los label ni las imagenes estas definidas, es decir que esto lo hará el usuario)

Luego tengo creado un menú el parte superior donde tengo un botón que pone el nombre del un programa a editar(que no está definido aún ya que lo tiene que definir el usuario). Al pinchar en él se me abre un nuevo form donde el usuario le asigna el nombre, la ruta del programa a ejecutar y la imagen (Todo esto es lo que aparece en form principal, en la imagen es donde el usuario va a pinchar para ejecutar la aplicación). Luego despues de haber establecido todo esto doy a guardar que lo que me hacer es aplicar la información que el usuario ya ha suministrado.

Este párrafo anterior lo tengo echo igual para otras 5 accesos directos.


Problemas:

*Cada vez que cierro la aplicación se me pierden los cambios realizados en usos anteriores(como es la ruta, nombre e imagen). ¿Cómo puedo hacer para que me guarde está información?

*Al colocar la imagen; la imagen que cargo es demasiado grande y solo se ve un trozo. ¿Cómo puedo hacer para que se vea entera?

*Cuando modifico la ruta de acceso directo (Le digo la ruta del ejecutable). ¿Cómo puedo modificar el evento de la imagen para que al hacer click me ejecute esa aplicación (Se como ejecutar pero lo que no se es como modificar el evento click de la imagen en tiempo de ejecución)?

Posibles soluciones que he pensado:

*Me parece q alomejor abría que hacer una base de datos (por aquello de almacenar la información de los accesos directos). No se si es así pero de todas maneras no lo he probado ya que no tengo conocimientos sobre bases de datos.



Espero que me podáis ayudar ya que con esta aplicación estoy bastante ilusionado aunque se que me va a costar mucho programarla. La verdad esq mis conocimientos son reducidos.

También espero haber descrito bastante bien lo que pretendo hacer pero  para cualquier aclaración preguntarme.

Gracias de antemano que leer todo este texto tiene lo suyo.
Un saludo: eduardogi








seba123neo

Hola, mira es facil, te digo lo que pienso para que puedas hacerlo

1 - necesitarias guardar el algun lado los datos.
2 - ese lado puede ser: el registro de windows (no creo), un simple archivo .ini, una base de datos, lo que se te de la gana.
3 - no creo eso de crear picturebox y labels por cada programa a agregar, es muy limitado, yo crearia un simple listview el cual se llene de los programas leyendo el archivo de datos(o base de datos) donde estan guardados, claro que guardando el icono que uno haya elegido para cada aplicacion. (tipo la lista de agregar y quitar programas de windows.), porque si guardas la ruta del icono, te lo mueven y te quedaste sin icono.
4 - para ejecutar con un simple Process.Start(rutadelprograma) lo podes hacer.
5 - el listview lo podes poner tipo lista de miniatura asi te quedan las imagenes grandes como en el explorador de windows.

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

[L]ord [R]NA

Si es un programa donde utilizaras una cantidad limitada de rutas e imagenes y estas como deberan de estar cargadas en memoria, te saldria mas sencillo tener un archivo que guarde la configuracion y luego simplemente la leas. Utilizando un delimitador podrias separar la ruta de la imagen, con la ruta de la aplicacion y cualquier otra informacion que deba ser leida al iniciar el programa.

eduardogi

ok ya he estado mirando como funcionan los listview. Pero ni se como funcionan los .ini ni se como hacer para que al agregar una fila al listview se me agrege la opción para que al pinchar ejecute ese programa.

Gracias por vuestras respuestas
Un saludo: eduardogi

[L]ord [R]NA

no necesariamente necesitas un .ini, dale formato a tu propio archivo de configuracion...

eduardogi

Un archivo de configuracion puede ser un .text que escriba y luego lo lea? ¿ que es exactamente un archivo de configuración.?.

Como puedo poner alguna imagen en el listview y que al pinchar en ella o en el nombre se ejecute esta aplicacion.

Para este ejemplo he creado un listview con dos columnas:
*Primera que pone nombre (Aqui se pondrán los item )
*Segunda que ponga Imagen (Aquí se pondrán las imagenes, pero se tienen que ver)

Se agregar el nombre pero no ponerle la característica para que al pinchar en el se abra la aplicación.

Tampoco se agregar la imagen.

Gracias de nuevo por tu respuesta.
Un saludo: eduardogi

MANULOMM

Consulta sobre Serializacion (ya sea XML o Binaria)
Los namespace son
System.Runtime.Serialization.Formatters.Binary;
System.XML, System.XML.Serialization

Atentamente,

Juan Manuel Lombana
Microsoft Certified Professional
Microsoft Student Partner
Medellín - Colombia


eduardogi

#7
para q necesito lo que me has dicho??
Un problemo que me he encontrado sobre los listview.
La primera linea me la pone bn pero la segunda no m la poní por eso edite el codigo y ahora tengo este pero m da error.


Código (vbnet) [Seleccionar]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Dim n As Byte
       n = 0
       n = n + 1
       Form1.ListView1.Items().Add(nombre.Text)
       Form1.ListView1.Items(n).SubItems.Add(imagenl.Text)
       Form1.ListView1.Items(n).SubItems.Add(rutal.Text)
End Sub


Gracias por tu respuesta.
Un saludo eduardogi