Hola de nuevo!
Cómo puedo añadir ítems por código a un cuadro de lista?
Gracias!!!
| ||||
Respuesta: como añadir items a un cuadro de lista por codigo Depende de varios factores. 1. Que version de access usas?? En versiones superiores a access 2000, se incorporaron los metodos addItem y removeItem (te sonaran de VB). Hasta este momento, la opcion es ir añadiendo o quitando Item directamente al origen de la fila de la lista, cada item esta sepradao por un ; Aqui tienes un ejemplo de funcionalidad con listas en access 2000 Ejemplo 2. Depende (tambien lo anterior) del tipo de origen de la fila que tenga la lista. "tipo de origen de la fila" es una propiedad de las listas, esta puede ser: Lista de valores (el caso anterior), o tabla/consulta. Si es tabla/consulta, la lista estara compuesta por los registros que devuelve esta tabal o consulta (que estara en la propiedad origen de la fila) , y la unica forma de que no salgan en la lista es dejando de formar parte de su origen, es decir, borrandolos de la tabla o plicando filtros a la consulta. Un saludo |
| |||
Respuesta: como añadir items a un cuadro de lista por codigo La lista inicialmente está vacía. Se va rellenando con los usernames segun se van conectando. Si me aconsejas otra cosa, no dudaré en acerte caso, jejejeje (pelotaaaaa) Gracias! |
| |||
Respuesta: como añadir items a un cuadro de lista por codigo Dentro del mismo formulario me sale,pero como tngo este codigo, no m o acaba de aceptar
Código:
Private Sub cmdLogin_Click() On Error GoTo Err_cmdLogin_Click Dim stDocName As String Dim stLinkCriteria As String Call configuracionInicial(Me.username.Value, Me.password.Value) If Nz(Me.username.Value, "") <> "" And Nz(Me.password.Value, "") <> "" Then Set rsUsuarios = CurrentDb.OpenRecordset("Select username,password,conectado,horaConexion,ultimoAcceso from USUARIOS where username='" & Me.username & "' AND password='" & Me.password & "'") If rsUsuarios.RecordCount = 0 Then MsgBox "Los datos introducidos son incorrectos, por favor, revísalos", vbInformation, titleMsgbox Else 'Usuario y contraseña correcto 'Cerramos el formulario login 'If Me.Dirty Then Me.Dirty = False DoCmd.Close 'Abrimos el formulario Main stDocName = "Frm_Main" DoCmd.OpenForm stDocName, , , stLinkCriteria 'Añadimos a la base de datos la fecha completa de conexion y conectado Call Conectar 'Poner como conectado en el formulario principal 'Call conectado Frm_Main.lstConectados.AddItem (rsUsuarios!username) End If rsUsuarios.Close Set rsUsuarios = Nothing End If Exit_cmdLogin_Click: Exit Sub Err_cmdLogin_Click: MsgBox Err.Description Resume Exit_cmdLogin_Click End Sub La linea marcada en rojo no me dice que requiere un objeto.. Después para quitar un item de la lista, me pide el index. Cómo puedo saber el index para cada usuario? otra cosa: En el evento key_Press en mi textbox password quisiera que cuando se presione enter me vaya a la funcion on click del boton Login, es posible? otra cosa 2: Como es que los formularios que contienen id's de otras tablas no me pone su respectivo valor? Última edición por Laufwerk; 04/02/2009 a las 16:50 |
| ||||
Respuesta: como añadir items a un cuadro de lista por codigo 1:) Para refererirte a un formulario desde otro prueba asi: forms!Frm_Main!lstConectados.AddItem (rsUsuarios!username) Te vendra bien echarle un hojo a esto: Sintaxis form y subform 2:) Realmente no hay un index para cada usuario, porque este depende del orden en que lo cargues. Que quieres hacer exactamente, borrar el que tengas seleccionado??? En tal caso, tambien te vendra bien, si vas a trabajar con listas, estos articulos de Juan Afan de Rivera (mvP access), donde tienes todo lo neecsario para recorrelas (y con ejemplos): Listas Mas listas 3:) Puedes referirte a cualquier funcion o procedimento (como el click del boton) desde cualquier parte del form, si es privado, o desde cualquier parte de tu aplicacion, si fuera publica, en tu caso: Call Login_Click 4:) La otra cosa 2 no acabo de entenderla Un saludo |
| |||
Respuesta: como añadir items a un cuadro de lista por codigo 1) probaré a ver si funciona 2) Lo que quiero hacer exactamente es que me elimine el usuario conectado. Me explico Hay un formulario de login, cuando accede en ese listbox deberia poner su nombre. Asi se sabrá quien esta conectado, cuando accedan varios usuarios. Al cerrar el formulario se debe quitar el username del listbox. 3) Y cual es el chr del ENTER el 13? Es que cuando le doy al enter me cambia al siguiente control y lo que quiero es que me llame al call, como bien dices Call Login_click Pero me falta lo anterior a la redirección de función. Otra cosa 2: Me explico tengo esta tabla, USUARIOS y estos son sus campos id_usuario nomre username password id_categoria donde id_categoria es una clave externa a la tabla CATEGORIAS y sus campos son id_categoria descripcion Cuando creo un formulario, en este campo lo hago mediante un combobox, hasta aqui bien. Cierro y guardo el formulario si los datos del usuario x son id_usuario = 1 nomre = Javier username =javier password =*** id_categoria = 1 donde el id de la categoria 1 corresponde a Administrador Al abrir de nuevo el formulario el campo de categoria se me queda en blanco Gracias!!!! |
| ||||
Respuesta: como añadir items a un cuadro de lista por codigo 1:) estupendo 2:) No lo tengo claro, pero se me ocurre que, sabiendo el nombre o el id del usuario, recoras la lista (con los enlaces que te puse) y borres el item de la lista 3:)Usa mejor el evento keydown Private Sub password_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then Call Login_Click End If End Sub 4:)No se lo entiendo. El control donde introduces el id_categoria con un combo, tiene origen de control? un saludo |