Foros Club Delphi

Foros Club Delphi (http://www.clubdelphi.com/foros/index.php)
-   Varios (http://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Crear accesos directos a un menú (http://www.clubdelphi.com/foros/showthread.php?t=72023)

cmfab 24-01-2011 22:02:34

Crear accesos directos a un menú
 
Hola amigos, disculpen un poco si fue molesto titular este post de la manera que lo hice. Ante todo reconozco que en terminos de programacion y sobre todo con lo fuerte que es Delphi como herramienta de desarrollo se puede lograr casi cualquier cosa en un diseño. El tema que me ocupa es que ya hay algun tiempo tras desarrollar una aplicacion que está compuesta como muchas comunes por ejmplo por una barra de menú con diferentes opciones que utiliza el cliente para su trabajo, se me ocurre preguntar a ver si alguien puede dar una idea de como llenar el fondo de la aplicacion con controles, pueden ser botones o algo así tipo accesos directos como los que tiene windows que vayan aputando a las secciones (menus) del sistema que mas se hayan ejecutado recientemente y que se puedan cargar desde allí. espero haberme explicado correctamente. gracias nuevamente por sus atenciones

Casimiro Notevi 24-01-2011 22:14:37

Muy mal por lo del título, amigo :confused:

cmfab 24-01-2011 22:39:00

hola, casimiro, en realidad lo del titulo es porque nunca he visto una aplicacion que haga lo que allí refiero. de todas maneras me disculpo por ello. lo importante para mi es ver si se puede debatir el post. gracias

Casimiro Notevi 24-01-2011 22:44:26

Si te digo la verdad, no he entendido bien qué es lo que quieres hacer, me parece que quieres algo así como poder añadir botones en tiempo de ejecución para hacer tareas, o algo así?

cmfab 24-01-2011 22:55:23

Gracias nuevamente, exacto es algo parecido. por ejemplo tengo un menu Tablas, que contiene varios items suponemos que uno de ellos es Productos, una vez iniciada la sesionde trabajo con la aplicacion y seleccionada esta variante del menu tabla, se crea tipo un acceso directo en el form principal del sistema para poder acceder desde allí en lugar de referirse de nuevo al menú. se tomaria un valor maximo de accesos directos, por ejemplo los ultimos 10 elementos accesados, o los 10 mas accesados en total. espero haberme explicado correctamente

Casimiro Notevi 24-01-2011 23:06:19

Bueno, hay muchas alternativas para hacer eso, ¿cómo te gustaría que fuese?, ¿tienes alguna preferencia de cómo debería ser?, ¿menú, listbox, botones, etc.?

cmfab 24-01-2011 23:38:30

me gustaría que se asemejara al escritorio de windos. me refiero a los accesos directos. es posible que se tenga que programar en algun listbox. o algo así y que se ejecuten los eventos del click de las opciones del menú
al hacer un solo click sobre estos elementos. Gracias nuevamente. En cualquier caso para que sepan. voy saliendo del trabajo +- en 30 minutos hasta mañana en la mañana por si no respondo en tiempo. Saludos

roman 24-01-2011 23:52:29

Cita:

Empezado por cmfab (Mensaje 388610)
me gustaría que se asemejara al escritorio de windos.

Pues entonces nada más fácil que usar un ListView, que es lo que, a fin de cuentas, es el escritorio de Windows.

// Saludos

Neftali 25-01-2011 12:23:25

Cita:

Empezado por Casimiro Notevi (Mensaje 388584)
Muy mal por lo del título

Coincido con Casimiro; Con más de 80 mensajes esto debería estar superado... :(

Cita:

Empezado por cmfab (Mensaje 388578)
...como llenar el fondo de la aplicacion con controles, pueden ser botones o algo así tipo accesos directos como los que tiene windows que vayan aputando a las secciones (menus) del sistema que mas se hayan ejecutado recientemente y que se puedan cargar desde allí. espero haberme explicado correctamente.

Entiendo que aquí lo compejo no es la forma de acceder a los accesos directos (que se pueden crear de diferentes maneras) sino cómo ejecutar diferentes acciones de menú.

Puedes acceder a las diferentes opciones de varias formas. La más rudimentaria es utilizando el Caption o el TAG de cada elemento de menú.

También puedes crear una lista (por ejemplo un TStringList) donde guardes parejas de String-Objeto (Caption del menú + Menuitem); Puedes acceder por el sting y ejecutar la acción asoociada al meniitem.

Neftali 25-01-2011 12:55:36

Si revisas este ejemplo, tiene que ver con lo que comento.
Ahí conviertes cada elemento del menú en un ítem de un TreeView. Es fácil añadir el código necesario para que la acción que realiza el elemento del menú la realice también el item.

Neftali 25-01-2011 13:35:13

Por cierto, me parece un tema interesante, así que le he puesto un título más adecuado al mensaje.

cmfab 25-01-2011 14:48:51

Gracias muchas a todos por sus respuestas. a partir de sus sugerencias comenzaré con el diseño. creo que es apropiado utilizar un listview como dice roman, al igual que el algoritmo de neftalí para poder acceder a las acciones del menú. me parece que queda bastante claro con sus propuestas. comenzaré lo mas pronto posible con ello. un saludo a todos por su dedicación

Neftali 25-01-2011 15:04:05

Me parece un tema interesante y tal vez útil para mi (no exactamente, pero si algo similar) tal vez en un futuro cercano, así que me he puesto a realizar algunas pruebas.
Si quieres échale un vistazo al código desarrollado aquí.

Un saludo.

pacopenin 25-01-2011 15:22:01

Un tema interesante con grandes posibilidades de desarrollo. Puede ser una buena idea para facilitar la usabilidad. Me gusta. Voy a echarle un ojo.

Gracias por el ejemplo y un saludo,

Chris 25-01-2011 17:40:22

Lo que quiere hacer el compañero se llama Dashboard. Con un TListview creo que se pudiera hacer algo básico. Puedes irle agregando controles adicionales dependiendo de tus necesidades. Lo importante es que lo mantengas claro y evita la saturación. Se trata de un panel donde el usuario se puede ubicar muy rápidamente.

Otra idea que se me ocurre, es hacerlo como el de Delphi. Una página web (HTML y Javascript) que el IDE la crea y carga dinamicamente. Tendrás más fluidez en la presentación y será más fácil de mantener.

Saludos,
Chris.

cmfab 27-01-2011 15:06:13

Volviendo al tema de este hilo os comento que al final el cliente decidió que los controles por ahora fueran estáticos. osea agregar las variantes del menu que de ante mano se conocen como mas usadas. es por ello que me decidí por usar un listview con estas variantes. ahora bien el tema que me ocupa es que la aplicacion es MDI y de esta manera siempre prevalece el listview sobre las ventanas MDIChild cuando el usuario hace click sobre cualquier variante del menú. alguna idea para ocultar este listview que está de fiondo de la aplicación cuando el usuario ejecuta items del menú. Gracias de antemano

Chaja 29-10-2012 18:07:20

Hola... No se si tarde pero ira esto que publique...
http://www.clubdelphi.com/foros/show...cesos+directos


La franja horaria es GMT +2. Ahora son las 06:57:29.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi