Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   ListBox seleccionado sin tener el foco (https://www.clubdelphi.com/foros/showthread.php?t=33887)

sakuragi 19-07-2006 21:04:57

ListBox seleccionado sin tener el foco
 
hola que tal.

me encontrado con la dificultad de saber si se puede tener seleccionado el listbox sin que tenga el foco este mismo.

por ejemplo. Estar escribiendo en un Edit y el listbox este seleccionado.

gracias

saludos

dec 19-07-2006 21:25:33

Hola,

Cita:

me encontrado con la dificultad de saber si se puede tener seleccionado el listbox sin que tenga el foco este mismo.
Creo recordar que los elementos del "ListBox" sí que pueden verse seleccionados sin que el propio "ListBox" mantenga el foco del usuario.

Cita:

por ejemplo. Estar escribiendo en un Edit y el listbox este seleccionado.
Bueno. Diferenciemos entre tener el foco del usuario y mostrar como seleccionado un elemento del ListBox. Esto último creo que es posible, me parece. Pero, lo primero no lo es, si el usuario está escribiendo en un "TEdit"... es el "TEdit" quien tiene el foco y ha de tenerlo además. ¿No?

sakuragi 20-07-2006 00:56:01

asi es compañero dec

si el listbox tiene el foco si se selecciona, pero no eh podido hacer que sin tener el foco del usuario quede seleccionado un item.

Los mas que eh podido es con el siguiente codigo

Código Delphi [-]
ListBox1.ItemIndex:=3;

si se selecciona pero no se queda seleccionado, solo dura un segundo

Código Delphi [-]
ListBox1.ExtendedSelect:=true;
con este se ha optenido el mismo resultado solo dura un segundo.

saludos
gracias

dec 20-07-2006 01:09:49

Hola,

Pues no lo entiendo. En Delphi 7 todo parece ir bien. Si selecciono un elemento del "ListBox" puedo luego dar el foco a otro control (escribiendo en un "TEdit", por ejemplo) sin que el "ListBox" pierda la selección del elemento: pierde el foco (como tiene que ser), pero no la selección del elemento.

Eso si selecciono un elemento con el ratón. Pero, si lo hago programáticamente también va como se espera. Pongo un "ListBox", un "Edit" y un "Button" en el formulario. Y en el evento "OnClick" del botón codifico lo siguiente para seleccionar un elemento del "ListBox":

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  ListBox1.SetFocus;
  ListBox1.ItemIndex := StrToInt(Edit1.Text);
end;

Y, justo a continuación, me pongo a escribir algo en el "TEdit"... y ocurre lo que se espera: el "ListBox" pierde el foco, pero no la selección del elemento... ¿Qué puede estar pasando? ¿Porqué no inicias un nuevo proyecto en Delphi y haces pruebas? Es posible que alguna propiedad del "ListBox" estuviera influyendo en algo: yo no he tocado ninguna, utilizo un "ListBox" recién añadido al formulario de un nuevo proyecto.

sakuragi 20-07-2006 07:00:19

tienes toda la razon dec

eran cosas ajenas al componente

gracias

saludos


La franja horaria es GMT +2. Ahora son las 23:34:18.

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