Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
controles:wcombobox [06/01/2020 19:26] pedro |
controles:wcombobox [26/03/2022 12:15] (actual) pedro [Ejemplo de uso] |
||
|---|---|---|---|
| Línea 12: | Línea 12: | ||
| Hay que recordar que el [[nefele:ocgi|CGI]] siempre nos devuelve cadenas, sean los Elementos y cIndex del tipo que sean. | Hay que recordar que el [[nefele:ocgi|CGI]] siempre nos devuelve cadenas, sean los Elementos y cIndex del tipo que sean. | ||
| - | ===== Ejemplo de uso ===== | + | Si habilitamos la propiedad **lMultiple** nos permitirá seleccionar varias opciones de las presentadas en el combo, en ese caso el [[nefele:ocgi|CGI]] nos devolverá un array con los los elementos seleccionados. |
| + | ===== Ejemplo de uso ===== | ||
| + | {{url>https://samples.nefele.dev/wiki/wcombobox 100%,600px}} | ||
| ==== Modo 1 ==== | ==== Modo 1 ==== | ||
| <Code:xailer linenums:1|====Nos retornara el nombre del mes seleccionado====> | <Code:xailer linenums:1|====Nos retornara el nombre del mes seleccionado====> | ||
| WITH OBJECT WComboBox():New(:WO) | WITH OBJECT WComboBox():New(:WO) | ||
| - | :cId := "mesvisita" | + | :cId := "mesvisita1" |
| :aItems := {"Enero","Febrero","Marzo","Abril","Mayo","Junio",; | :aItems := {"Enero","Febrero","Marzo","Abril","Mayo","Junio",; | ||
| "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"} | "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"} | ||
| :cText := "Seleccione el mes de visita" | :cText := "Seleccione el mes de visita" | ||
| :cIcon := "event_available" | :cIcon := "event_available" | ||
| - | :cTitle := "Mes de visita" | + | :cTitle := "<b>Modo 1:</b> Mes de visita" |
| :cHelp := "Este es el Mes que prefiere que le hagamos la visita periódica" | :cHelp := "Este es el Mes que prefiere que le hagamos la visita periódica" | ||
| :Create() | :Create() | ||
| Línea 29: | Línea 31: | ||
| </Code> | </Code> | ||
| <Code:xailer linenums:1|====Y para recuperar la selección ...====> | <Code:xailer linenums:1|====Y para recuperar la selección ...====> | ||
| - | LOCAL cSeleccion := oCGI:GetCgiValue("mesvisita") ) | + | LOCAL cSeleccion := oCGI:GetCgiValue("mesvisita1") |
| </Code> | </Code> | ||
| ==== Modo 2 ==== | ==== Modo 2 ==== | ||
| Línea 35: | Línea 37: | ||
| <Code:xailer linenums:1|====Nos presentara los meses separados por trimestres y retornara el número del mes seleccionado====> | <Code:xailer linenums:1|====Nos presentara los meses separados por trimestres y retornara el número del mes seleccionado====> | ||
| WITH OBJECT WComboBox():New(:WO) | WITH OBJECT WComboBox():New(:WO) | ||
| - | :cId := "mesvisita" | + | :cId := "mesvisita2" |
| :aItems := {{-1, "1er Trimestre"},{1,"Enero"},{2,"Febrero"},{3,"Marzo"},; | :aItems := {{-1, "1er Trimestre"},{1,"Enero"},{2,"Febrero"},{3,"Marzo"},; | ||
| {-1, "2o Trimestre"}, {4,"Abril"},{5,"Mayo"},{6,"Junio"},; | {-1, "2o Trimestre"}, {4,"Abril"},{5,"Mayo"},{6,"Junio"},; | ||
| Línea 42: | Línea 44: | ||
| :cText := "Seleccione el mes de visita" | :cText := "Seleccione el mes de visita" | ||
| :cIcon := "event_available" | :cIcon := "event_available" | ||
| - | :cTitle := "Mes de visita" | + | :cTitle := "<b>Modo 2:</b> Mes de visita" |
| :cHelp := "Este es el Mes que prefiere que le hagamos la visita periódica" | :cHelp := "Este es el Mes que prefiere que le hagamos la visita periódica" | ||
| :Create() | :Create() | ||
| Línea 48: | Línea 50: | ||
| </Code> | </Code> | ||
| <Code:xailer linenums:1|====Y para recuperar la selección ...====> | <Code:xailer linenums:1|====Y para recuperar la selección ...====> | ||
| - | LOCAL cSeleccion := oCGI:GetCgiValue("mesvisita") ) | + | LOCAL cSeleccion := oCGI:GetCgiValue("mesvisita2") |
| </Code> | </Code> | ||
| ==== Modo 3 ==== | ==== Modo 3 ==== | ||
| Línea 57: | Línea 59: | ||
| :cText := "Seleccione una imagen" | :cText := "Seleccione una imagen" | ||
| :cIcon := "camera" | :cIcon := "camera" | ||
| - | :cTitle := "Imagen para incluir en el documento" | + | :cTitle := "<b>Modo 3:</b> Imagen para incluir en el documento" |
| :cHelp := "Esta Imagen aparecerá en la parte superior del documento" | :cHelp := "Esta Imagen aparecerá en la parte superior del documento" | ||
| // Creamos un separador | // Creamos un separador | ||
| Línea 65: | Línea 67: | ||
| :lGroup := .T. | :lGroup := .T. | ||
| END WITH | END WITH | ||
| - | // Utilizando dierctamente :AddItem | + | // Utilizando directamente :AddItem |
| :AddItem("L1","Lago 1",,"images\lago.jpeg") | :AddItem("L1","Lago 1",,"images\lago.jpeg") | ||
| :AddItem("L2","Lago 2",,"images\sample-1.jpg") | :AddItem("L2","Lago 2",,"images\sample-1.jpg") | ||
| Línea 84: | Línea 86: | ||
| </Code> | </Code> | ||
| <Code:xailer linenums:1|====Y para recuperar la selección ...====> | <Code:xailer linenums:1|====Y para recuperar la selección ...====> | ||
| - | LOCAL cSeleccion := oCGI:GetCgiValue("selimagen") ) | + | LOCAL cSeleccion := oCGI:GetCgiValue("selimagen") |
| </Code> | </Code> | ||
| - | {{url>https://samples.nefele.dev/wcombobox 100%,600px}} | + | |
| + | ==== Modo 4 ==== | ||
| + | |||
| + | <Code:xailer linenums:1|====Selección Múltiple====> | ||
| + | WITH OBJECT WComboBox():New(:WO) | ||
| + | :cId := "multiple" | ||
| + | :aItems := {"Enero","Febrero","Marzo","Abril","Mayo","Junio",; | ||
| + | "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"} | ||
| + | :cText := "Meses" | ||
| + | :cIcon := "event_available" | ||
| + | :cTitle := "<b>Modo 4:</b> Selección Multiple de Mes" | ||
| + | :cHelp := "Meses en los que se realizarán las visitas periódicas" | ||
| + | :lMultiple := .T. | ||
| + | :Create() | ||
| + | END WITH | ||
| + | </Code> | ||
| + | <Code:xailer linenums:1|====Y para recuperar la selección ...====> | ||
| + | LOCAL aSeleccion := oCGI:GetCgiArray("multiple") | ||
| + | // Como es una selección múltiple de esta manera nos retorna siempre un array, | ||
| + | // aunque solo se seleccione un elemento. | ||
| + | LOCAL aSeleccion := oCGI:GetCgiValue("multiple") | ||
| + | // Si lo pedimos así, cuando se seleccionen varios elementos nos devolverá un array | ||
| + | // si es una selección simple nos devuelve una cadena. | ||
| + | </Code> | ||
| + | |||
| ===== Propiedades ===== | ===== Propiedades ===== | ||
| Línea 94: | Línea 121: | ||
| |[[propiedades:cIcon]]| | Icono que aparecerá a la izquierda del control | 0.1| | |[[propiedades:cIcon]]| | Icono que aparecerá a la izquierda del control | 0.1| | ||
| |aItems| | Elementos del ComboBox, se puede utilizar de 3 maneras | 0.1| | |aItems| | Elementos del ComboBox, se puede utilizar de 3 maneras | 0.1| | ||
| + | |lMultiple| | Se permite la selección múltiple | 0.1| | ||
| |cSelected| | cIndex seleccionado por defecto | 0.1| | |cSelected| | cIndex seleccionado por defecto | 0.1| | ||
| - | |cOnChange| | Función del CGI a llamar cuando cambie la selección, si empieza por # llama a funcion JS | 0.1| | + | |[[propiedades:conclick|cOnChange]]| | Función del CGI a llamar cuando cambie la selección, si empieza por # llama a funcion JS | 0.1| |
| |[[propiedades:aParams]]| | Parámetros extras a enviar cuando se llame a cOnChange | 0.1| | |[[propiedades:aParams]]| | Parámetros extras a enviar cuando se llame a cOnChange | 0.1| | ||
| |[[propiedades:cAjaxBevel]]| | [[controles:wBevel]] donde se incrusta el resultado de la llamada al Ajax | 0.1| | |[[propiedades:cAjaxBevel]]| | [[controles:wBevel]] donde se incrusta el resultado de la llamada al Ajax | 0.1| | ||
| Línea 101: | Línea 129: | ||
| |cAjaxText| | Mensaje a poner debajo del Reloj de Actividad | 0.1| | |cAjaxText| | Mensaje a poner debajo del Reloj de Actividad | 0.1| | ||
| |lReLoad| .F. | Cuando se envía por [[tecnicas:Ajax]] ha de activarse la Recarga para que materialize lo inicialice | 0.1| | |lReLoad| .F. | Cuando se envía por [[tecnicas:Ajax]] ha de activarse la Recarga para que materialize lo inicialice | 0.1| | ||
| + | |lHtmlDefault| .F. | Fuerza a utilizar el Select por defecto de HTML y no el de Materialize, es útil para los navegadores IOS ya que el de Materialize no funciona aun correctamente. | 0.1| | ||
| ===== Métodos ===== | ===== Métodos ===== | ||
| - | ^Nombre ^Descripción ^Versión ^ | + | ^Nombre ^Retorna ^Descripción ^Versión ^ |
| - | |AddItem(cIndex, cText, lGroup, cImage) | Añadir [[controles:wItemComboBox]] a aItems. | 0.1| | + | |AddItem(cIndex, cText, lGroup, cImage) | Nuevo Item |Añadir [[controles:wItemComboBox]] a aItems. | 0.1| |
| ===== Hereda de... ===== | ===== Hereda de... ===== | ||