Problema con orden de los formularios

dreamim
26 de Noviembre del 2004
Hola a todos.

He hecho en VB una base de datos con Visdata y tengo hecho el código para agregar clientes. He puesto todos los campos en text box y el command button de agregar. En fin, funciona muy bien, pero el caso es que no lo quiero como formulario principal, ni como proyecto.

El problema es que he añadido otro formulario para que sea el principal, con el logo de la empresa y los botones de añadir clientes, artículos, realizar facturas, etc., y quiero que el proyecto que ya tengo sea un formulario secundario, y que el que cargue sea el que he metido nuevo. Lo que pasa es que el de añadir clientes ya está grabado como vbp y tengo que cargarlo usando ese archivo, cuando en realidad lo que quiero es que el proyecto sea el formulario principal, el frm.

No sé si me explico bien. Agradecería que alguien me ayudase.

Saludos.

Luis Atondo
26 de Noviembre del 2004
A lo que entiendo, lo que necesitas es entrar en menu PROJECT y en la ultima opcion del menu dira el "nombre de aplicacion" PROPERTIES... saldra un pantalla de las propiedades del proyecto.., en el combo STARTUP PROYECT le indicas el form con el que quieres empezar y ya es todo...
Espero que te sirva de algo...

dreamim
26 de Noviembre del 2004
Bueno Eth0, sinceramente lo único que no pretendo y además detesto, es discutir y menos por internet. A la cara al menos es más constructivo y se aprende si se ha de aprender algo.

Te equivocas cuando me dices que primero tengo que familiarizarme con el VB porque estoy harto de hacer "ejercicios" con botones, casillas de selección, calculadoras, termómetros, etc. Todas esas cosas que seguro tú conoces de sobra como los típicos ejercicios de VB, y que sólo requieren de un formulario. Y sí, he mirado mucho la interface de VB, algunos manuales y todo eso que tú dices que cuesta. Pues yo lo he hecho y no me cuesta, porque soy consciente de que al menos hay que saber algo para preguntar, por poco que sea, y creo que para eso están los foros.

El problema está cuando he decidido hacer una pequeña aplicación muy sencilla, esto es, un mantenimiento de clientes, con altas, bajas, modificaciones y consultas. Algo que se podría hacer en el mismo formulario con un control grid y ya está, pero precisamente lo que quiero es empezar a manejar varios formularios. Y con el problema añadido de manejar bases de datos, cosa que no ocurre con los ejercicios del monigote que se mueve por la pantalla, la seleccion de un option button, una calculadora, etc., etc.

Es verdad que cuando grabé el formulario de alta de clientes, me grabó el proyecto y sé cómo introducir un formulario existente, pero es que no estaba. Y yo pensé en hacer otro formulario de presentación o algo así que le precediese, y poner un botón de "alta de clientes" para acceder a este que ya tenía hecho, y empezar a darle "forma", pero no podía añadirlo como formulario porque no estaba. He comprobado lo que dices y sí, estaba en otra carpeta. ¿Ves como los foros sirven para algo?. De todas formas, ya lo había solucionado hace rato, con la opción "guardar formulario como" (que no proyecto) y lo he salvado independientemente del proyecto, en la carpeta donde tengo el trabajo, y así lo he podido añadir y establecer el nuevo formulario como principal, de la forma que tú me dices, que sí la conocía. El problema residía en que no encontraba el formulario.

En fin Eth0, no me siento ofendido por lo que dices, está claro que no sé VB y repito que por eso estoy aquí, y si este segundo post tuyo, hubiese sido el primero, me habrías ahorrado muchos calentamientos de cabeza.

No entiendo del todo tu postura. Sospecho que dominas muy bien el VB, pero joder, tampoco he llegado y he dicho "QUIERO APRENDER VISUAL, ¿QUÉ HAGO?". He hecho una consulta, te puede parecer absurda, no lo dudo, pero el que a tí te parezca inmensamente tonta y de principiante, pues bueno, lo puedo considerar normal, pero no la forma en que has posteado la primera vez.

Mira, yo tengo 39 años, no soy un niño. Estudié ingeniería informática, y sé muchísima metodología y resolver algoritmos, aparte de programar perfectamente en dbase, clipper y cobol (al menos lo hacía, ya lo he dejado), que son los lenguajes que había cuando yo estudié. También y perdona la inmodestia, soy un auténtico experto en la compresión de películas (lo que llaman ripeo) y edición de video, y he participado en foros viendo preguntas para mí absolutamente absurdas, vamos como de un niño pequeño, y te digo la verdad, nunca he dicho que "tú no tienes ni idea" ni cosas así, y no es porque sea o no ofensivo. Al contrario, he respondido lo mejor que he podido.

En fin, en un par de meses estoy seguro que controlaré visual bastante bien, porque tengo mucha experiencia en informática y programación. Entretanto si hago alguna consulta y me puedes ayudar, y desde ya te digo que te parecerán tontas, te estaré agradecido.

Saludos.

eth0
26 de Noviembre del 2004
<<Te equivocas cuando me dices que primero tengo que familiarizarme con el VB porque estoy harto de hacer "ejercicios" con botones>>

No me equivoco, tienes que familiarizarte con VB. Prueba de ello es que estás intentando hacer un proyecto con más de un formulario y no sabes cómo hacerlo. Aprender VB no es sólo mirar cuatro ejemplos de calculadoras y demás. Tienes que hacer tus propias pruebas, investigar las opciones, ver qué puedes hacer. Los ejemplos sólo te muestran el código y eso está muy bien, pero no te enseñan el _manejo_ de VB, sólo la programación.

<<Y sí, he mirado mucho la interface de VB,>>

Pues deberías haberla mirado más, porque el no saber cómo trabajar con más de un formulario demuestra que no la has mirado lo suficiente (o no has mirado en los sitios correctos).

<<He comprobado lo que dices y sí, estaba en otra carpeta. ¿Ves como los foros sirven para algo?>>

Yo no he dudado nunca de la utilidad de los foros.

<<El problema residía en que no encontraba el formulario.>>

Pero ¿por qué no encontrabas el formulario? Pues porque ni siquiera te paraste a mirar dónde lo guardaba en la ventana de "Guardar como".

En serio, no pretendo parecer seco ni borde, pero no creo que sea estrictamente necesario escribir dos párrafos del estilo "Huy, sí, lo que intentas hacer es muy fácil" o "Espero que esto te ayude" (no hablo por nadie, cuidado) para que te sea más útil mi ayuda.

Lo que yo te he dado es un consejo que te puede quitar todos los problemas del tirón: que te relajes, te lo tomes con calma, hagas pruebas (no un programilla sencillo de clientes y demás, no; dos simples formularios con un botón), y te mires un par de tutoriales. Pero no sobre cómo programar en VB, que eso ya sabemos que sabes hacerlo, sino del _entorno_. De cómo trabajar con formularios, de cómo organizar tus proyectos, de las putadillas que te hace VB a veces (como guardarte los formularios en donde no es).

Puedes seguir mi consejo y ahorrarte montones de mensajes en el foro preguntando cosas que puedes descubrir por tí mismo investigando un poco, o simplemente quedarte atascado con cada cosa que no sepas hacer, como te ha pasado ahora. De esta última forma no harás más que desesperarte. Mañana querrás hacer una función que sea accesible en todo el programa y, si no sabes como hacerlo, te volverás a quedar atascado. Pasado mañana puede que necesites depurar el programa y, si no se te ha ocurrido investigar un poco los menús, no sabrás hacerlo y te volverás a atascar. Y cada vez que te quedes atascado será una nueva pregunta que pondrás en el foro, con la consiguiente espera a ver si alguien contesta. Si te tomas las cosas con calma y toqueteas el programa a ver cómo se hace esto y aquello, te quitarás de encima muchísimos quebraderos de cabeza.

<<si este segundo post tuyo, hubiese sido el primero, me habrías ahorrado muchos calentamientos de cabeza.>>

Pero si es que digo esencialmente lo mismo, hombre (bueno, salvo lo de que miraras dentro del VBP, eso sí).

<<pero joder, tampoco he llegado y he dicho "QUIERO APRENDER VISUAL, ¿QUÉ HAGO?". He hecho una consulta, te puede parecer absurda, no lo dudo, pero el que a tí te parezca inmensamente tonta y de principiante, pues bueno, lo puedo considerar normal>>

Que no se trata de eso, leñe. Que la pregunta no es absurda, ni preguntar es malo ni tonto ni nada por el estilo. Que cuando yo empecé a manejar VB se me perdían los formularios igual que a ti, pero yo no me quedé atascado y dije "voy a preguntar en el foro a ver qué me dicen", no. Yo respiré hondo y me fijé en que la ventana de "Guardar como" mostraba el directorio de VB, y dije "miiiiiira el hijopuuuuta, ¿pues no me está guardando los formularios donde le sale del troncho?". Y a partir de entonces no se me volvió a perder un formulario.

Lo que te intento decir es que preguntar no es malo, mi a mí me molesta en absoluto que se pregunten cosas tan básicas como la que has preguntado. Lo que a mí no me parece normal (que no me molesta, ojo) es que se pretenda invadir Troya sin saber manejar una espada. Que es muy fácil decir "bueno, no sé como hacer esto, así que voy a preguntar en el foro y que me digan cómo se hace", pero eso a la larga reporta más bien poco. Si te sobrepones al problema y dices "vaya, ahora no sé cómo hacer esto, voy a mirar la ayuda" o "voy a buscar en Google" o "esta opción me suena a que tiene relación con esto, voy a mirarla" verás cómo lo que aprendas no se te va a olvidar. Yo he aprendido un montón de cosas sobre VB simplemente sobreponiéndome a los problemas que me iban surgiendo, sin desesperarme y tomándomelo con calma. Y leyendo muchos artículos en Internet, igual que he hecho con PHP, Java y demás.

<<y he participado en foros viendo preguntas para mí absolutamente absurdas, vamos como de un niño pequeño, y te digo la verdad, nunca he dicho que "tú no tienes ni idea" ni cosas así, y no es porque sea o no ofensivo. Al contrario, he respondido lo mejor que he podido.>>

¿Pero por qué esa manía de tomar la expresión "no tener ni idea" como algo despectivo? Lo _único_ que te dije fue que se notaba por lo que escribiste en el mensaje que te hacía falta aprender a manejar VB, que lo que preguntabas se resolvía simplemente aprendiendo a manejar el entorno, las opciones de menú y demás. Siento mucho que hayas entendido mal el mensaje (puede que porque simplemente me haya expresado erróneamente).

Y sobre contestar bien o mal, yo aún sigo sin ver qué hay de malo en aconsejarte que aprendas a manejar el entorno de VB antes de ponerte a hacer programillas en serio, con o sin frases al estilo "Bueno, espero que esto te ayude, un saludo". Tú lo que quieres es una respuesta que te sirva de ayuda, ¿no? Pues en mi modesta opinión, lo que deberías hacer es fijarte bien en lo que haces y en cómo lo haces, y no dar las cosas por sentado, como te ha pasado con el tema de los formularios perdidos, que has dado por sentado que VB te había guardado los formularios dentro de los VBP en lugar de pararte a ver realmente dónde los estaba guardando. ¿Que a tí te parece más o menos útil? Estupendo. Pero lo que no me puedes decir es que mi respuesta no sea buena, ni que no te parece normal. ¿Que no me ando con rodeos y voy a lo que hay? Pues sí, pero ¿qué hay de malo en eso? Si te lo tomas a mal es tu problema. Mi respuesta es esa, te guste o no. Y conste que te lo estoy diciendo con todo el respeto del mundo, e intento ayudarte de la mejor forma que se me ocurre: en lugar de darte el pescado estoy intentando enseñarte a pescar. De esa forma te aseguro que sí que controlarás VB, no bastante bien, sino perfectamente, tengas la experiencia que tengas.

No pretendo que me digas "oh, gracias eth0, me has iluminado" ni nada por el estilo. Sólo pretendo hacerte ver que mi consejo es sincero y pretende ser de ayuda. Si lo aceptas, bien. Si no lo aceptas, bien también. Pero por favor, las lecciones de netiqueta me las sé de memoria, y también sé que es conveniente no andarse por las ramas y contestar directamente a lo que se pregunta, sin ni tan siquiera responder con un mensaje de agradecimiento. No es necesario. Estamos aquí para ayudar. Y créeme, si no hubiera tenido la intención de ayudarte ni siquiera me habría molestado en contestar a tu mensaje.

<<Entretanto si hago alguna consulta y me puedes ayudar, y desde ya te digo que te parecerán tontas, te estaré agradecido.>>

Y dale con lo de las preguntas tontas. ¿No dice el dicho que "si preguntas serás tonto durante cinco minutos, pero si no lo haces serás tonto toda tu vida"? Pues eso mismo digo yo: no hay pregunta tonta.

Por mi parte doy por terminado el malentendido. Ahora es cosa tuya si quieres replantearte el afrontar el problema de forma distinta o no.

Saludos.

balderman
26 de Noviembre del 2004
A ver, creo que he entendido tu duda:

Ahora tienes un proyecto que tiene un formulario con los textBox y el botón y quieres agregar ese formulario a otro proyecto, verdad?

Es muuuuy fácil:

1. Abre el proyecto al que quieres añadir el formulario que ya te funciona.

2. En la ventana "Explorador de Proyectos" (en la que sale un árbol con tu proyecto y los formularios, módulos y demás), haz click con el botón derecho sobre el proyecto y selecciona "Agregar -> Formulario".

3. Te saldrá una ventanita con dos pestañas : "Nuevo" y "Existente". Selecciona la pestaña "Existente"

4. Ahora sólo tienes que buscar el formulario que quieres agregar y darle a "Aceptar".

5. Por último, deberás encargarte de que se abra ese formulario cuando pulses tu botoncito, menú, o lo que tengas pensado. Sólo tendrás que añadir este código en el evento correspondiente. Supondré que tu formulario se llama frmInsertar, así que sustitúyelo por el nombre adecuado:

Load frmInsertar
frmInsertar.Show

6. Ya lo tienes!!

welfo
26 de Noviembre del 2004
Mira chavo, para crear un proyecto primero debes tener una idea de que es lo que quieres hacer, ya que un proyecto pueden tener muchos formularios o uno solo, ahora bien si tu proyecto va a tener varios formularios debes agregar un formulario principal este es un formulario mdi, y los demas los vas a realizar como hijos, cambiando la propiedad de cada uno de ellos asi mdichild = true y en propiedades de proyecto el formulario mdi es el primero que se tiene que ejecutar, agregas un menu o algo y desde ahi ejecutas los formularios hijos. suerte.

dreamim
26 de Noviembre del 2004
Bueno eth0, evidentemente me he hecho un lío con los proyectos y formularios, para decirme eso, no hubiese sido necesario que posteases. Respecto a tu consejo de aprender a manejar Visual Basic antes de ponerte a hacer nada con él, pues no estoy para nada de acuerdo, puesto que para aprender hay precisamente que ponerse a hacer cosas con él. Y bueno, que no tengo idea de cómo funciona, pues depende de con quién me compare, pero no, no tengo mucha idea de momento y por eso estoy aquí, y si tu forma de postear es esa, decir a los usuarios que "no tienen ni idea de esto o de lo otro", discúlpame, pero no te molestes en contestar al menos mis posts, pues tu "ayuda" es la última que necesito.

Muchas gracias balderman y welfo, me ha quedado claro lo que me decís, y sobre todo eso del formulario principal. Mi problema es que programar sé bien, pero no conozco la estructura de Visual Basic a la hora de organizar los módulos por separado, pero espero en breve conocer todo esto bastante bien y poder crear mi primera aplicación seria, puesto que ejercicios como calcularoras, termómetros y todo esto que vemos por ahí, que sólo van en un formulario, he hecho muchos y no tengo ningún problema, ni en sacar el algoritmo, ni en manejar los objetos con sus propiedades.

Sólo una cosa más, baldeman, que veo que has entendido lo que me pasa. Yo creé ese formulario con todos los text box y un control DATA para manejar la base de datos, y lo grabé, pero se grabó como proyecto (VBP), así que haciendo lo que tú dices, que ya lo había probado, de añadir un formulario existente, no puedo, porque no existe ningún FRM. Sólo tengo 3 archivos: "Facturación.vbp", "facturación.vbw" y la "base de datos.mdb".

En fin, ya veré si se puede, y si no lo repito fijándome mejor en lo que es el proyecto y sus respectivos formularios. Muchas gracias a los dos.

Saludos.

eth0
26 de Noviembre del 2004
Si llego a saber que te lo tomarías tan mal, desde luego que no habría posteado. ¬_¬

Te he dado un consejo, dreamim, que antes de ponerte a hacer programas en VB aprendas _cómo_ funciona VB: cómo se organizan los proyectos, diferenciar los tipos de módulos, etc. Ahora bien, eres libre de tomar por buena mi ayuda o no. Ahí no me meto. Puede que la última "ayuda" que necesites sea la mía, pero desde luego la primera es que investigues _por tí mismo_ el entorno. Si al primer problema (que puedes resolver simplemente mirando los menús) ya tienes que ir a preguntar a los foros, mal lo llevas.

<<si tu forma de postear es esa, decir a los usuarios que "no tienen ni idea de esto o de lo otro", discúlpame, pero no te molestes en contestar al menos mis posts, pues tu "ayuda" es la última que necesito.>>

Obviamente no has sabido leer mi mensaje. La ayuda no estaba en decirte que no tienes ni idea (que es verdad como tú mismo has dicho y si te lo tomas como algo ofensivo es tu problema), sino en aconsejarte que antes de ponerte a hacer un programa en serio aprendas cómo se trabaja con VB. Porque si no, luego tienes que ir a los foros a preguntar cómo cambiar el formulario de inicio del proyecto, que es tan fácil como seleccionar Proyecto/Propiedades de <NombreProyecto>... y cambiarlo allí.

Pero claro, para saber eso hay que probar las opciones del menú (o leerse la ayuda que para eso está), y eso ya no nos gusta tanto. Eso de investigar a ver para qué sirve esta opción y esta otra no es para nosotros, ¿verdad?.

<<Respecto a tu consejo de aprender a manejar Visual Basic antes de ponerte a hacer nada con él, pues no estoy para nada de acuerdo, puesto que para aprender hay precisamente que ponerse a hacer cosas con él.>>

Claro, pero igual que para aprender a conducir tienes que ver antes cómo funciona el coche si no quieres pegártela en la primera curva, para aprender a usar un entorno de programación también. Si no, lo más seguro es que acabes quedándote atascado ante el más mínimo problema, como te pasa ahora. La práctica es lo mejor para aprender, pero siempre que antes tengas una buena base teórica. De otra forma no entenderás el por qué debes hacer lo que sea que tengas que hacer.

<<Yo creé ese formulario con todos los text box y un control DATA para manejar la base de datos, y lo grabé, pero se grabó como proyecto (VBP)>>

Los ficheros VBP _no_ son formularios, ni puedes guardar un formulario como un fichero VBP a no ser que escribas tú mismo la extensión a mano.

Los ficheros VBP sólo contienen la lista de módulos y formularios del proyecto, además de las propiedades globales del proyecto y las referencias a librerías de tipos que contiene. Podrás verlo si abres el VBP con un editor de texto. Allí podrás ver la ruta en la que has guardado el formulario, que seguramente será el directorio de VB, en Archivos de programa.

<<no puedo, porque no existe ningún FRM.>>

Sí existe. Búscalo. Abre el VBP con el Bloc de notas y mira dónde lo has guardado.

Y ahora dime: ¿sigues pensando que mi "ayuda" no te vale de nada? Pues nada, sigue peleándote con los proyectos, los formularios y la madre que los parió, pero no te estarás haciendo ningún bien, créeme. Más te vale parar, tomarte las cosas con calma, toquetear el VB viendo para qué sirven las opciones de las que dispones, leerte un par de tutoriales y retomar el programa cuando entiendas la forma de trabajar de VB. Si no, estarás haciendo la casa por el tejado.

eth0
26 de Noviembre del 2004
Tú te has hecho un lío tú sólo con los proyectos, formularios y demás que ni te cuento.

Te aconsejo que aprendas a manejar Visual Basic antes de ponerte a hacer nada con él, porque leyendo tu mensaje se nota que no tienes ni idea de cómo funciona.