Results 1 to 6 of 6

Thread: raised exception class 'External: SIGSEGV'.

  1. #1
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685

    Question raised exception class 'External: SIGSEGV'.

    CodeTyphon 7.10. (Windows 10)

    Als ik onderstaande procedure laat uitvoeren dan krijg ik error.
    Opmaak van procedure gebeurde door een externe programmeur, die huidig niet meer beschikbaar is.

    Berichten, Errors: 1
    Error: Project DBdata64T raised exception class 'External: SIGSEGV'.
    In file 'umain.pas' at line 373:
    TDBGrid(Sender).Hint := Hints[acol];

    Code:
    procedure TFMAIN.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
    const
        Hints: array[0..9] of string =
        ('','Volgorde op NAAM','Volgorde op ADRES','Voilgorde op PostCode',
        'Vogorde op HUIS Tel.','Volgorde op GSM Tel.','Volgorde op E-Mail',
        'Volgorde op Geboortedatum','Volgorde op INFO','Volgorde op Alfabet NAAM');
       arow : integer = 0;
       ocol: integer =-1; // old column
       acol: integer = 0; // actual column
    begin
       TDBGrid(Sender).MouseToCell(X, Y, acol, arow);
       if (ocol <> acol) and (acol <= High(Hints)) then 
       begin
         TDBGrid(Sender).Hint := Hints[acol];
         Application.ActivateHint(Mouse.CursorPos);
         ocol := acol;
       end;
    end;
    Hier heb ik codesteun nodig a.u.b.

  2. #2
    Senior Member Wok's Avatar
    Join Date
    Dec 2002
    Location
    Alkmaar
    Posts
    2,085
    Om iets uit te proberen:

    Zet eens // voor deze regel TDBGrid(Sender).Hint := Hints[acol];

    En kijk of je programma dan wel werkt.
    Ik kan me slecht voorstellen dat het programma op de hints in de fout gaat.
    10.4.2, Delphi2010, of Lazarus 2.2.0

  3. #3
    Ik zie dat alle 'variabelen' als const zijn gedefinieerd.
    Toch programmeer je: ocol ;= acol;
    Als je de variabelen arow, ocol en acol als integer var definieer geef ik je een goede kans dat de procedure correct loopt.

    Succes!

  4. #4
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685

    Thumbs up

    HAHA ...
    Dank voor de tip!

    Code:
    procedure TFMAIN.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    const
      Hints: array[0..9] of string =
         ('','Volgorde op NAAM','Volgorde op ADRES','Voilgorde op PostCode',
         'Vogorde op HUIS Tel.','Volgorde op GSM Tel.','Volgorde op E-Mail',
         'Volgorde op Geboortedatum','Volgorde op INFO','Volgorde op Alfabet NAAM');
    var
      vararow: integer;
      varocol: integer;
      varacol: integer;
    begin
      vararow := 0;
      varocol  := -1; // old column
      varacol  := 0; // actual column
      TDBGrid(Sender).MouseToCell(X, Y, varacol, vararow);
      if (varocol <> varacol) and (varacol <= High(Hints)) then
      begin
        TDBGrid(Sender).Hint := Hints[varacol];
        Application.ActivateHint(Mouse.CursorPos);
        varocol := varacol;
      end;
    end;
    Nu werkt het wel.

  5. #5
    Senior Member Wok's Avatar
    Join Date
    Dec 2002
    Location
    Alkmaar
    Posts
    2,085
    ('','Volgorde op NAAM','Volgorde op ADRES','Voilgorde op PostCode',
    'Vo_gorde op HUIS Tel.','Volgorde op GSM Tel.','Volgorde op E-Mail',

    Om het compleet te maken pas je dan ook de spelfouten even aan
    10.4.2, Delphi2010, of Lazarus 2.2.0

  6. #6
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685

    Smile

    Bedankt !

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •