Ver Mensaje Individual
  #4  
Antiguo 04-03-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola teecweb.

No cuál sea el contenido del TCheckListBox, pero basta con que realices esta simple prueba en una nueva aplicación para comprobar que la propiedad ItemIndex devuelve el valor del índice actual:
Código Delphi [-]
...
procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
begin
  for i:= 1 to 10 do
    CheckListBox1.Items.Add('Item '+IntToStr(i));
end;

procedure TForm1.CheckListBox1Click(Sender: TObject);
begin
  ShowMessage('Indice item actual: '+IntToStr(Integer(CheckListBox1.ItemIndex))+#10+
              'Valor item actual : '+CheckListBox1.Items[CheckListBox1.ItemIndex]);
end;
...
Es decir que si el CheckListBox tiene algún contenido, el código:
Código Delphi [-]
procedure TForm1.CheckListBox1Click(Sender: TObject);
begin
  Caption:= IntToStr(Integer(CheckListBox1.ItemIndex));
end;
mostrará el índice actualmente seleccionado.

Lo que podría suceder es que no estés llamándo el código en el evento OnClick del TCheckListBox, en ese caso sí es necesario comprobar el valor de la propiedad ItemIndex:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  if CheckListBox1.ItemIndex = -1 then
    ShowMessage('¿ No le parece que debería seleccionar algo primero ?')
  else
    Caption:= IntToStr(Integer(CheckListBox1.ItemIndex));
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita