Resulta que estoy programando una aplicación que más o menos va así... (Observar la imagen adjunta, por favor)
Notarán el panel de enmedio, es un TListView que ya contiene la funcionalidad que con doble click sobre un elemento, lo transfiere al panel a su derecha.
procedure TfrmIntrfz.lstvewSbctgrsDblClick(Sender: TObject); var iIndc : integer; bExst : boolean; begin if lstvewSbctgrs.Items.Count > 0 then begin bExst := False; for iIndc := 0 to lstboxRbrs.Items.Count -1 do if lstvewSbctgrs.ItemFocused.Caption = lstboxRbrs.Items.Strings[iIndc] then bExst := True; if NOT bExst then begin lstboxRbrs.Items.Add(lstvewSbctgrs.ItemFocused.Caption); bitbttnActlzrRprt.Enabled := True AND EsPropietario(iIdntfcdrRprt); bHaCambiado := True; end; trevewCtgrsClick(Self); end; end;
PPPEEERRROOOOOOOOO..., y como todo en ésta vida tiene un "pero", resulta que si el usuario da un doble click FUERA del texto (es decir, sin tenerlo enfocado), tira una violación de acceso por que entra la función de doble click e intenta procesar un valor nulo...
La pregunta es, ¿cómo puedo evaluar el contenido del doble click dentro del TListView, permitiéndome "cachar" el doble click nulo o sin valor procesable? Añadiré que ya intenté evaluar NIL, NULL, vacío y todos los contenidos que me parecieron podrían caber en la condición, pero el problema se repite...
Como siempre, agradezco de antemano su colaboración para resolver éste problema.