Recent

Author Topic: Error en Lista  (Read 2017 times)

RJH71

  • New Member
  • *
  • Posts: 12
Error en Lista
« on: November 03, 2019, 08:39:13 pm »
Saludos amigos del foro, tengo un inconveniente, tengo instalado Lazarus Free Pascal 2.0.4 y estoy trabajando con Mysql, el problema esta en la foto que mando no se como arreglar el problema me podran ayudar por favor, gracias de antemano.

lainz

  • Hero Member
  • *****
  • Posts: 4468
    • https://lainz.github.io/
Re: Error en Lista
« Reply #1 on: November 03, 2019, 08:45:35 pm »
Hola, estas seguro que "SubItems" esta inicializado?

...SubItems <> nil

También

Length(SubItems) > 0

SubItems.Count > 0

(alguna de las dos, dependiendo de que tipo sea)

RJH71

  • New Member
  • *
  • Posts: 12
Re: Error en Lista
« Reply #2 on: November 04, 2019, 04:45:46 am »
Gracias por responder lainz, como hago para inicializar el ListView soy nuevo en esto, aun sigo estudiando por videos tutoriales.
quedo de ti y gracias.

RJH71

  • New Member
  • *
  • Posts: 12
Re: Error en Lista
« Reply #3 on: November 04, 2019, 07:25:31 am »
me he dado cuenta de que cuando pierde el foco de una fila da error.

lucamar

  • Hero Member
  • *****
  • Posts: 4219
Re: Error en Lista
« Reply #4 on: November 04, 2019, 12:41:32 pm »
Eso es porque haces lo mismo tanto si Selected es Nil como si no; lo que causa la excepción es tratar de acceder a SubItems cuando Selected = Nil. Lo que deberías hacer en vez de eso es algo así como:

Code: Pascal  [Select][+][-]
  1. if Assigned(LVWkrWorker.Selected)
  2. and Assigned(LVWkrWorker.Selected.SubItems)
  3. and (LVWkrWorker.Selected.SubItems.Count >= 5) then
  4.   begin
  5.     { asigna los valores para SubItems }
  6.   end;

Eso asignará valores para sub-items sólo si hay algo seleccionado y tiene al menos cinco SubItems.

Lo que hagas en caso contrario depende de lo que necesites; por ejemplo, si hay menos de cinco subitems podrías usar SubItems.Add para crear los que falten, etc.
« Last Edit: November 04, 2019, 12:44:31 pm by lucamar »
Turbo Pascal 3 CP/M - Amstrad PCW 8256 (512 KB !!!) :P
Lazarus/FPC 2.0.8/3.0.4 & 2.0.12/3.2.0 - 32/64 bits on:
(K|L|X)Ubuntu 12..18, Windows XP, 7, 10 and various DOSes.

RJH71

  • New Member
  • *
  • Posts: 12
Re: Error en Lista
« Reply #5 on: November 06, 2019, 09:22:57 am »
Gracias Lucamar quedo bien gracias.

 

TinyPortal © 2005-2018