![]() |
StringGridSelectCell Procedure Aufruf-Problem
Moin ich folgende Procedure geschrieben als Ereignis bei einem StringGrid
Delphi-Quellcode:
Nun möchte ich diese Procedure aus einer anderen Procedure (z.B.: Suchen) aufrufen.
procedure Tfrm_main.sg_asciiSelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean); var zeichen: string; begin with frm_asciizeichen do begin if not ((ARow = 10) and (ACol > 12)) then begin zeichen := sg_ascii.Cells[ACol, ARow]; lbl_asciizeichen.caption := zeichen; lbl_dez.Caption := inttostr(Ord(zeichen[1])); lbl_hex.Caption := '0x'+DezToX(StrToInt(inttostr(Ord(zeichen[1]))),16); top := Mouse.CursorPos.Y; Left := Mouse.CursorPos.X + 20; Show; end; end; end;
Delphi-Quellcode:
Die Fehlermeldung lautet: Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen.
procedure Tfrm_main.btn_sucheClick(Sender: TObject);
var i,j:integer; begin for i:=0 to sg_ascii.RowCount-1 do for j:=0 to sg_ascii.ColCount - 1 do if edt_suche.Text = sg_ascii.Cells[j,i] then sg_asciiSelectCell(sg_ascii, j, i, True) else MessageDlg('Es wurde kein Eintrag gefunden.', mtInformation, [mbOK], 0); end; Für mich sind die Parameter aber richtig gesetzt. Sieht einer den Fehler? Danke im voraus. Sven |
Re: StringGridSelectCell Procedure Aufruf-Problem
hallo,
es gibt einen kleinen fehler beim aufruf:
Delphi-Quellcode:
sg_asciiSelectCell(sg_ascii, j, i, True)
Delphi-Quellcode:
in der deklaration ist der letzte parameter(CanSelect) als var deklariert. d.h. dieser parameter wird nicht als wert sondern als adresse übergeben. heißt im klartext, du musst beim aufruf eine boolean-variable übergeben. einfach nur true reicht nicht.
procedure Tfrm_main.sg_asciiSelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean); anschließend sollte es funktionieren.
Delphi-Quellcode:
hoffe es hilft.
var BoolParam: Boolean;
begin ... BoolParam := true; sg_asciiSelectCell(sg_ascii, j, i, BoolParam); ... martin |
Re: StringGridSelectCell Procedure Aufruf-Problem
Danke. hat geholfen.
Sven |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz